Mercurial
annotate deita/deita.h @ 177:24fe8ff94056
Fixed few issues with current setup.
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Wed, 21 Jan 2026 19:40:48 -0800 |
| parents | f3084bca7317 |
| children |
| rev | line source |
|---|---|
|
75
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
1 #ifndef DEITA |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
2 #define DEITA |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
3 |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
4 #include "dowa/dowa.h" |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
5 |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
6 typedef enum |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
7 { |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
8 DEITA_DATABASE_TYPE_SQLITE3 = 0 |
|
168
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
9 // TODO: DEITA_DATABASE_TYPE_POSTGRES, DEITA_DATABASE_TYPE_MYSQL |
|
75
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
10 } Deita_Database_Type; |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
11 |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
12 typedef struct Deita_Connection Deita_Connection; |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
13 typedef struct Deita_Result_Set Deita_Result_Set; |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
14 |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
15 typedef enum |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
16 { |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
17 DEITA_COLUMN_TYPE_NULL = 0, |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
18 DEITA_COLUMN_TYPE_INTEGER, |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
19 DEITA_COLUMN_TYPE_REAL, |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
20 DEITA_COLUMN_TYPE_TEXT, |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
21 DEITA_COLUMN_TYPE_BLOB |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
22 } Deita_Column_Type; |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
23 |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
24 // --- Connection Management --- // |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
25 |
|
168
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
26 extern Deita_Connection *Deita_Connection_Create(Deita_Database_Type database_type, const char *connection_string); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
27 extern void Deita_Connection_Close(Deita_Connection *p_connection); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
28 extern boolean Deita_Connection_Is_Open(Deita_Connection *p_connection); |
|
75
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
29 |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
30 // --- Query Execution --- // |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
31 |
|
168
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
32 extern Deita_Result_Set *Deita_Query_Execute( Deita_Connection *p_connection, const char *query, Dowa_Arena *p_arena); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
33 extern Deita_Result_Set *Deita_Query_Execute_Prepared( Deita_Connection *p_connection, const char *query, int32 parameter_count, const char **parameter_values, Dowa_Arena *p_arena); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
34 extern int32 Deita_Query_Execute_Update(Deita_Connection *p_connection, const char *query); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
35 extern int32 Deita_Query_Execute_Update_Prepared(Deita_Connection *p_connection, const char *query, int32 parameter_count, const char **parameter_values); |
|
75
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
36 |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
37 // --- Result Set Access --- // |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
38 |
|
168
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
39 extern boolean Deita_Result_Set_Next(Deita_Result_Set *p_result_set); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
40 extern int32 Deita_Result_Set_Get_Column_Count(Deita_Result_Set *p_result_set); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
41 extern const char *Deita_Result_Set_Get_Column_Name(Deita_Result_Set *p_result_set, int32 column_index); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
42 extern Deita_Column_Type Deita_Result_Set_Get_Column_Type(Deita_Result_Set *p_result_set, int32 column_index); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
43 extern const char *Deita_Result_Set_Get_Text(Deita_Result_Set *p_result_set, int32 column_index); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
44 extern int64 Deita_Result_Set_Get_Integer(Deita_Result_Set *p_result_set, int32 column_index); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
45 extern double Deita_Result_Set_Get_Real(Deita_Result_Set *p_result_set, int32 column_index ); |
|
f3084bca7317
[Misc] Fixed all errors and all tests should pass now.
MrJuneJune <me@mrjunejune.com>
parents:
75
diff
changeset
|
46 extern void Deita_Result_Set_Free(Deita_Result_Set *p_result_set); |
|
75
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
47 |
|
ae6a88e6e484
[Deita] Simple DB connection lib.
June Park <parkjune1995@gmail.com>
parents:
diff
changeset
|
48 #endif |