00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00059 #ifndef DUI_INITDB_H
00060 #define DUI_INITDB_H
00061
00062 #include <time.h>
00063
00064 typedef struct DuiDBConnection_s DuiDBConnection;
00065 typedef struct DuiDBRecordSet_s DuiDBRecordSet;
00066
00068 void dui_db_init(void);
00069
00081 DuiDBConnection * dui_connection_new (const char * provider,
00082 const char * dbname,
00083 const char * username,
00084 const char * authentication_token);
00085
00086 void dui_connection_free (DuiDBConnection *conn);
00087
00088
00097 DuiDBRecordSet * dui_connection_exec (DuiDBConnection *, const char * buff);
00098
00100 DuiDBRecordSet * dui_connection_tables (DuiDBConnection *);
00101
00103 DuiDBRecordSet * dui_connection_table_columns (DuiDBConnection *,
00104 const char * table_name);
00105
00106
00108 void dui_recordset_free (DuiDBRecordSet *);
00109
00113 int dui_recordset_rewind (DuiDBRecordSet *rs);
00114
00119 int dui_recordset_fetch_row (DuiDBRecordSet *rs);
00120
00124 const char * dui_recordset_get_value (DuiDBRecordSet *, const char * fieldname);
00125
00138 int dui_connection_catch_error (DuiDBConnection *conn, char ** ret_str);
00139 int dui_recordset_catch_error (DuiDBRecordSet *, char ** ret_str);
00140
00151 struct timespec dui_connection_get_now (DuiDBConnection *conn);
00152
00167 void dui_connection_lock (DuiDBConnection *conn, const char *tablename);
00168
00170 void dui_connection_unlock (DuiDBConnection *conn, const char *tablename);
00171
00174 #endif
00175