Wed, 21 Jan 2026 17:46:10 +0100
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
|
0
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
1 | /* |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
2 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
3 | * |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
4 | * Copyright 2024 Olaf Wintermann. All rights reserved. |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
5 | * |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
6 | * Redistribution and use in source and binary forms, with or without |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
7 | * modification, are permitted provided that the following conditions are met: |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
8 | * |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
9 | * 1. Redistributions of source code must retain the above copyright |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
10 | * notice, this list of conditions and the following disclaimer. |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
11 | * |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
12 | * 2. Redistributions in binary form must reproduce the above copyright |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
13 | * notice, this list of conditions and the following disclaimer in the |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
14 | * documentation and/or other materials provided with the distribution. |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
15 | * |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
16 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
17 | * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
18 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
19 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
20 | * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
21 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
22 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
23 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
24 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
25 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
26 | * POSSIBILITY OF SUCH DAMAGE. |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
27 | */ |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
28 | |
|
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
29 | #include "db.h" |
|
3
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
30 | #include "dbutils/db.h" |
|
0
1a157da63d7c
add API for registering types and simple SQLite proof of concept
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
31 | |
|
12
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
32 | int dbuConnectionExec(DBUConnection *conn, const char *sql) { |
|
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
33 | DBUQuery *q = conn->createQuery(conn, NULL); |
|
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
34 | int err = 1; |
|
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
35 | if(!dbuQuerySetSQL(q, sql)) { |
|
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
36 | err = dbuQueryExec(q); |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
37 | } |
|
12
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
38 | dbuQueryFree(q); |
|
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
39 | return err; |
|
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
40 | } |
|
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
41 | |
| 23 | 42 | int dbuConnectionIsActive(DBUConnection *conn) { |
| 43 | return conn->isActive ? conn->isActive(conn) : 1; | |
| 44 | } | |
| 45 | ||
| 46 | void dbuConnectionFree(DBUConnection *conn) { | |
| 47 | conn->free(conn); | |
| 48 | } | |
| 49 | ||
| 50 | DBUQuery* dbuConnectionQuery(DBUConnection *conn, const CxAllocator *a) { | |
| 51 | return conn->createQuery(conn, a); | |
| 52 | } | |
|
12
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
53 | |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
54 | DBUQuery* dbuQueryCreate(DBUConnection *conn, const CxAllocator *a, const char *sql) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
55 | DBUQuery *query = dbuConnectionQuery(conn, a); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
56 | if(query) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
57 | if(dbuQuerySetSQL(query, sql)) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
58 | dbuQueryFree(query); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
59 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
60 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
61 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
62 | return query; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
63 | } |
|
12
421555fa9ce4
add dbuConnectionExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
3
diff
changeset
|
64 | |
|
3
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
65 | int dbuQuerySetSQL(DBUQuery *q, const char *sql) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
66 | return q->setSQL(q, sql); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
67 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
68 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
69 | int dbuQuerySetParamString(DBUQuery *q, int index, cxstring str) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
70 | return q->setParamString(q, index, str); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
71 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
72 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
73 | int dbuQuerySetParamInt(DBUQuery *q, int index, int i) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
74 | return q->setParamInt(q, index, i); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
75 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
76 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
77 | int dbuQuerySetParamInt64(DBUQuery *q, int index, int64_t i) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
78 | return q->setParamInt64(q, index, i); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
79 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
80 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
81 | int dbuQuerySetParamDouble(DBUQuery *q, int index, double d) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
82 | return q->setParamDouble(q, index, d); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
83 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
84 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
85 | int dbuQuerySetParamNull(DBUQuery *q, int index) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
86 | return q->setParamNull(q, index); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
87 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
88 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
89 | int dbuQuerySetParamBytes(DBUQuery *q, int index, void *bytes, int len) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
90 | return q->setParamBytes(q, index, bytes, len); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
91 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
92 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
93 | int dbuQueryExec(DBUQuery *q) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
94 | return q->exec(q); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
95 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
96 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
97 | DBUResult* dbuQueryGetResult(DBUQuery *q) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
98 | return q->getResult(q); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
99 | } |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
100 | |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
101 | void dbuQueryFree(DBUQuery *q) { |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
102 | q->free(q); |
|
69ea9040d896
add DB abstraction layer
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
0
diff
changeset
|
103 | } |
|
14
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
104 | |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
105 | |
|
17
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
106 | int dbuResultHasData(DBUResult *result) { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
107 | return result->hasData(result); |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
108 | } |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
109 | |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
110 | int dbuResultIsOk(DBUResult *result) { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
111 | return result->isOk(result); |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
112 | } |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
113 | |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
114 | int dbuResultNextRow(DBUResult *result) { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
115 | return result->nextRow(result); |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
116 | } |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
117 | |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
118 | cxstring dbuResultGetText(DBUResult *result, int field) { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
119 | return result->getText(result, field); |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
120 | } |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
121 | |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
122 | int64_t dbuResultGetInt(DBUResult *result, int field) { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
123 | if(result->optional_getInt) { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
124 | return result->optional_getInt(result, field); |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
125 | } else { |
|
47
e2778a456501
fix wrong field index in dbuResultGetInt
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
24
diff
changeset
|
126 | cxstring s = result->getText(result, field); |
|
17
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
127 | int64_t value = 0; |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
128 | cx_strtoi64(s, &value, 10); |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
129 | return value; |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
130 | } |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
131 | } |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
132 | |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
133 | DBUBytes dbuResultGetBinary(DBUResult *result, int field) { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
134 | if(result->optional_getBinary) { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
135 | return result->optional_getBinary(result, field); |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
136 | } else { |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
137 | cxstring bin = result->getText(result, field); |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
138 | return (DBUBytes) { (const unsigned char*)bin.ptr, bin.length }; |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
139 | } |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
140 | } |
|
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
141 | |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
142 | void dbuResultFree(DBUResult *result) { |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
143 | result->free(result); |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
144 | } |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
145 | |
|
17
23e678e6c917
add wrapper for DBUResult fptrs
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
15
diff
changeset
|
146 | |
|
14
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
147 | |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
148 | int dbuResultAsInt32(DBUResult *r, int32_t *result) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
149 | int64_t i; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
150 | int ret = dbuResultAsInt64(r, &i); |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
151 | if(!ret) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
152 | *result = (int32_t)i; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
153 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
154 | return ret; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
155 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
156 | |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
157 | int dbuResultAsUInt32(DBUResult *r, uint32_t *result) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
158 | int64_t i; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
159 | int ret = dbuResultAsInt64(r, &i); |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
160 | if(!ret) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
161 | *result = (uint32_t)i; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
162 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
163 | return ret; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
164 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
165 | |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
166 | int dbuResultAsInt64(DBUResult *r, int64_t *result) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
167 | if(r->hasData(r)) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
168 | if(r->fieldType(r, 0) == DBU_FIELD_INT) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
169 | if(r->optional_getInt) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
170 | *result = r->optional_getInt(r, 0); |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
171 | } else { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
172 | cxstring s = r->getText(r, 0); |
|
15
862ab606ee06
fix query cleanup in dbuResultAsValue functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
14
diff
changeset
|
173 | r->free(r); |
|
14
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
174 | return cx_strtoi64(s, result, 10); |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
175 | } |
|
15
862ab606ee06
fix query cleanup in dbuResultAsValue functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
14
diff
changeset
|
176 | r->free(r); |
|
14
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
177 | return 0; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
178 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
179 | } |
|
15
862ab606ee06
fix query cleanup in dbuResultAsValue functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
14
diff
changeset
|
180 | r->free(r); |
|
14
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
181 | return -1; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
182 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
183 | |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
184 | int dbuResultAsUInt64(DBUResult *r, uint64_t *result) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
185 | int64_t i; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
186 | int ret = dbuResultAsInt64(r, &i); |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
187 | if(!ret) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
188 | *result = (uint64_t)i; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
189 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
190 | return ret; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
191 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
192 | |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
193 | int dbuResultAsString(DBUResult *r, char **result) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
194 | cxmutstr s; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
195 | int ret = dbuResultAsCxString(r, &s); |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
196 | if(!ret) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
197 | *result = s.ptr; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
198 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
199 | return ret; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
200 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
201 | |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
202 | int dbuResultAsCxString(DBUResult *r, cxmutstr *result) { |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
203 | return dbuResultAsCxStringA(r, cxDefaultAllocator, result); |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
204 | } |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
205 | |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
206 | int dbuResultAsCxStringA(DBUResult *r, const CxAllocator *a, cxmutstr *result) { |
|
14
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
207 | if(r->hasData(r)) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
208 | if(r->fieldType(r, 0) != DBU_FIELD_NULL) { |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
209 | cxstring s = r->getText(r, 0); |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
210 | if(s.ptr) { |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
211 | *result = cx_strdup_a(a, s); |
|
15
862ab606ee06
fix query cleanup in dbuResultAsValue functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
14
diff
changeset
|
212 | r->free(r); |
|
14
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
213 | return 0; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
214 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
215 | } |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
216 | } |
|
15
862ab606ee06
fix query cleanup in dbuResultAsValue functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
14
diff
changeset
|
217 | r->free(r); |
|
14
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
218 | return -1; |
|
59e62e65182c
add convenience functions for getting a single value from results
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
12
diff
changeset
|
219 | } |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
220 | |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
221 | static DBUQuery* execInt64ParamQuery(DBUConnection *conn, const char *sql, int64_t param) { |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
222 | DBUQuery *q = conn->createQuery(conn, cxDefaultAllocator); |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
223 | if(dbuQuerySetSQL(q, sql)) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
224 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
225 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
226 | } |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
227 | dbuQuerySetParamInt64(q, 1, param); |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
228 | if(dbuQueryExec(q)) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
229 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
230 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
231 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
232 | return q; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
233 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
234 | |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
235 | static DBUQuery* execStringParamQuery(DBUConnection *conn, const char *sql, cxstring param) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
236 | DBUQuery *q = conn->createQuery(conn, cxDefaultAllocator); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
237 | if(dbuQuerySetSQL(q, sql)) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
238 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
239 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
240 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
241 | dbuQuerySetParamString(q, 1, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
242 | if(dbuQueryExec(q)) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
243 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
244 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
245 | } |
|
19
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
246 | return q; |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
247 | } |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
248 | |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
249 | DBUResult* dbuSqlExecQuery(DBUConnection *conn, const CxAllocator *a, const char *sql) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
250 | DBUQuery *q = dbuQueryCreate(conn, a, sql); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
251 | if(!q) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
252 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
253 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
254 | if(dbuQueryExec(q)) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
255 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
256 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
257 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
258 | DBUResult *result = dbuQueryGetResult(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
259 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
260 | return result; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
261 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
262 | |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
263 | DBUResult* dbuSqlExecQueryParamInt32(DBUConnection *conn, const CxAllocator *a, const char *sql, int32_t param) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
264 | DBUQuery *q = execInt64ParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
265 | if(!q) return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
266 | DBUResult *r = dbuQueryGetResult(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
267 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
268 | return r; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
269 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
270 | |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
271 | DBUResult* dbuSqlExecQueryParamInt64(DBUConnection *conn, const CxAllocator *a, const char *sql, int64_t param) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
272 | DBUQuery *q = execInt64ParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
273 | if(!q) return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
274 | DBUResult *r = dbuQueryGetResult(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
275 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
276 | return r; |
|
19
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
277 | } |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
278 | |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
279 | DBUResult* dbuSqlExecQueryParamUInt32(DBUConnection *conn, const CxAllocator *a, const char *sql, uint32_t param) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
280 | DBUQuery *q = execInt64ParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
281 | if(!q) return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
282 | DBUResult *r = dbuQueryGetResult(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
283 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
284 | return r; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
285 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
286 | |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
287 | DBUResult* dbuSqlExecQueryParamUInt64(DBUConnection *conn, const CxAllocator *a, const char *sql, uint32_t param) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
288 | DBUQuery *q = execInt64ParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
289 | if(!q) return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
290 | DBUResult *r = dbuQueryGetResult(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
291 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
292 | return r; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
293 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
294 | |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
295 | DBUResult* dbuSqlExecQueryParamString(DBUConnection *conn, const CxAllocator *a, const char *sql, const char *param) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
296 | DBUQuery *q = execStringParamQuery(conn, sql, cx_str(param)); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
297 | if(!q) return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
298 | DBUResult *r = dbuQueryGetResult(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
299 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
300 | return r; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
301 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
302 | |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
303 | DBUResult* dbuSqlExecQueryParamCxString(DBUConnection *conn, const CxAllocator *a, const char *sql, cxstring param) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
304 | DBUQuery *q = execStringParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
305 | if(!q) return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
306 | DBUResult *r = dbuQueryGetResult(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
307 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
308 | return r; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
309 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
310 | |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
311 | DBUResult* dbuSqlExecQueryParamCxMutStr(DBUConnection *conn, const CxAllocator *a, const char *sql, cxmutstr param) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
312 | DBUQuery *q = execStringParamQuery(conn, sql, cx_strcast(param)); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
313 | if(!q) return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
314 | DBUResult *r = dbuQueryGetResult(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
315 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
316 | return r; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
317 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
318 | |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
319 | |
|
19
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
320 | int dbuSimpleGetInt64WithIntParam(DBUConnection *conn, const char *sql, int64_t param, int64_t *result) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
321 | DBUQuery *q = execInt64ParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
322 | if(!q) return 1; |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
323 | int err = dbuQueryExec(q); |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
324 | dbuQueryFree(q); |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
325 | if(!err) { |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
326 | DBUResult *r = dbuQueryGetResult(q); |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
327 | err = dbuResultAsInt64(r, result); |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
328 | } |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
329 | return err; |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
330 | } |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
331 | |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
332 | int dbuSimpleGetInt64WithStringParam(DBUConnection *conn, const char *sql, cxstring param, int64_t *result) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
333 | DBUQuery *q = execStringParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
334 | if(!q) return 1; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
335 | DBUResult *r = dbuQueryGetResult(q); |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
336 | dbuQueryFree(q); |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
337 | return dbuResultAsInt64(r, result);; |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
338 | } |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
339 | |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
340 | int dbuSimpleGetStringWithIntParam(DBUConnection *conn, const char *sql, int64_t param, const CxAllocator *a, cxmutstr *result) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
341 | DBUQuery *q = execInt64ParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
342 | if(!q) return 1; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
343 | DBUResult *r = dbuQueryGetResult(q); |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
344 | dbuQueryFree(q); |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
345 | return dbuResultAsCxStringA(r, a, result); |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
346 | } |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
347 | |
|
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
348 | int dbuSimpleGetStringWithStringParam(DBUConnection *conn, const char *sql, cxstring param, const CxAllocator *a, cxmutstr *result) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
349 | DBUQuery *q = execStringParamQuery(conn, sql, param); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
350 | if(!q) return 1; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
351 | DBUResult *r = dbuQueryGetResult(q); |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
352 | dbuQueryFree(q); |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
353 | return dbuResultAsCxStringA(r, a, result); |
|
18
e78ef06fe062
add dbuSimpleGet* API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
17
diff
changeset
|
354 | } |
|
19
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
355 | |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
356 | CxList* dbuSimpleGetListWithIntParam(DBUConnection *conn, const char *sql, int64_t param, const CxAllocator *a, DBUClass *type) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
357 | DBUQuery *q = conn->createQuery(conn, cxDefaultAllocator); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
358 | if(dbuQuerySetSQL(q, sql)) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
359 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
360 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
361 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
362 | dbuQuerySetParamInt64(q, 1, param); |
|
19
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
363 | DBUObjectBuilder *builder = dbuObjectBuilder(type, q, a); |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
364 | CxList *list = dbuObjectBuilderGetList(builder); |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
365 | dbuObjectBuilderDestroy(builder); |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
366 | return list; |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
367 | } |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
368 | |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
369 | CxList* dbuSimpleGetListWithStringParam(DBUConnection *conn, const char *sql, cxstring param, const CxAllocator *a, DBUClass *type) { |
|
24
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
370 | DBUQuery *q = conn->createQuery(conn, cxDefaultAllocator); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
371 | if(dbuQuerySetSQL(q, sql)) { |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
372 | dbuQueryFree(q); |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
373 | return NULL; |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
374 | } |
|
df671b62538e
add dbuSqlExec API
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
23
diff
changeset
|
375 | dbuQuerySetParamString(q, 1, param); |
|
19
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
376 | DBUObjectBuilder *builder = dbuObjectBuilder(type, q, a); |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
377 | CxList *list = dbuObjectBuilderGetList(builder); |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
378 | dbuObjectBuilderDestroy(builder); |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
379 | return list; |
|
55de75c839e8
add dbuSimpleGetList* functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
18
diff
changeset
|
380 | } |
|
48
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
381 | |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
382 | int dbuSqlExec(DBUConnection *conn, const char *sql) { |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
383 | DBUResult *result = dbuSqlExecQuery(conn, NULL, sql); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
384 | int ret = dbuResultIsOk(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
385 | dbuResultFree(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
386 | return ret; |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
387 | } |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
388 | |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
389 | int dbuSqlExecParamInt32(DBUConnection *conn, const char *sql, int32_t param) { |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
390 | DBUResult *result = dbuSqlExecQueryParam(conn, NULL, sql, param); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
391 | int ret = dbuResultIsOk(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
392 | dbuResultFree(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
393 | return ret; |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
394 | } |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
395 | |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
396 | int dbuSqlExecParamInt64(DBUConnection *conn, const char *sql, int64_t param) { |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
397 | DBUResult *result = dbuSqlExecQueryParam(conn, NULL, sql, param); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
398 | int ret = dbuResultIsOk(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
399 | dbuResultFree(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
400 | return ret; |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
401 | } |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
402 | |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
403 | int dbuSqlExecParamUInt32(DBUConnection *conn, const char *sql, uint32_t param) { |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
404 | DBUResult *result = dbuSqlExecQueryParam(conn, NULL, sql, param); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
405 | int ret = dbuResultIsOk(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
406 | dbuResultFree(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
407 | return ret; |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
408 | } |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
409 | |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
410 | int dbuSqlExecParamUInt64(DBUConnection *conn, const char *sql, uint32_t param) { |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
411 | DBUResult *result = dbuSqlExecQueryParam(conn, NULL, sql, param); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
412 | int ret = dbuResultIsOk(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
413 | dbuResultFree(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
414 | return ret; |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
415 | } |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
416 | |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
417 | int dbuSqlExecParamString(DBUConnection *conn, const char *sql, const char *param) { |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
418 | DBUResult *result = dbuSqlExecQueryParam(conn, NULL, sql, param); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
419 | int ret = dbuResultIsOk(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
420 | dbuResultFree(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
421 | return ret; |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
422 | } |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
423 | |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
424 | int dbuSqlExecParamCxString(DBUConnection *conn, const char *sql, cxstring param) { |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
425 | DBUResult *result = dbuSqlExecQueryParam(conn, NULL, sql, param); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
426 | int ret = dbuResultIsOk(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
427 | dbuResultFree(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
428 | return ret; |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
429 | } |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
430 | |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
431 | int dbuSqlExecParamCxMutStr(DBUConnection *conn, const char *sql, cxmutstr param) { |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
432 | DBUResult *result = dbuSqlExecQueryParam(conn, NULL, sql, param); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
433 | int ret = dbuResultIsOk(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
434 | dbuResultFree(result); |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
435 | return ret; |
|
deb6c4b8cf9d
rename dbuSqlExec to dbuSqlExecQuery, add new dbuSqlExec
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
47
diff
changeset
|
436 | } |