29 lines
881 B
C
29 lines
881 B
C
#pragma once
|
|
#include "platform/system.h"
|
|
#include "zpl.h"
|
|
|
|
void db_init();
|
|
void db_shutdown();
|
|
|
|
// raw query data getters
|
|
char *db_get(char *query, bool header);
|
|
char *db_row(char *table, char *name);
|
|
bool db_csv(zpl_csv_object *csv, char *query);
|
|
bool db_row_csv(zpl_csv_object *csv, char *table, char *name);
|
|
|
|
// csv backed data queries
|
|
bool db_push(char *query);
|
|
bool db_row_push(char *table, char *name);
|
|
zpl_adt_node *db_field(char *field, int row);
|
|
size_t db_rows();
|
|
#define db_str(fld, row) (db_field(fld, row)->string)
|
|
#define db_flt(fld, row) (db_field(fld, row)->type == ZPL_ADT_TYPE_STRING ? 0.0f : db_field(fld, row)->real)
|
|
#define db_int(fld, row) (db_field(fld, row)->type == ZPL_ADT_TYPE_STRING ? 0 : db_field(fld, row)->integer)
|
|
zpl_csv_object *db_last();
|
|
void db_pop();
|
|
|
|
// sql execution
|
|
bool db_exec_file(const char *sql);
|
|
bool db_exec(const char *query);
|
|
|