dbutils/db.c

changeset 17
23e678e6c917
parent 15
862ab606ee06
child 18
e78ef06fe062
--- a/dbutils/db.c	Tue Feb 25 21:12:11 2025 +0100
+++ b/dbutils/db.c	Thu Feb 27 20:25:54 2025 +0100
@@ -82,6 +82,43 @@
 }
 
 
+int dbuResultHasData(DBUResult *result) {
+    return result->hasData(result);
+}
+
+int dbuResultIsOk(DBUResult *result) {
+    return result->isOk(result);
+}
+
+int dbuResultNextRow(DBUResult *result) {
+    return result->nextRow(result);
+}
+
+cxstring dbuResultGetText(DBUResult *result, int field) {
+    return result->getText(result, field);
+}
+
+int64_t dbuResultGetInt(DBUResult *result, int field) {
+    if(result->optional_getInt) {
+        return result->optional_getInt(result, field);
+    } else {
+        cxstring s = result->getText(result, 0);
+        int64_t value = 0;
+        cx_strtoi64(s, &value, 10);
+        return value;
+    }
+}
+
+DBUBytes dbuResultGetBinary(DBUResult *result, int field) {
+    if(result->optional_getBinary) {
+        return result->optional_getBinary(result, field);
+    } else {
+        cxstring bin = result->getText(result, field);
+        return (DBUBytes) { (const unsigned char*)bin.ptr, bin.length };
+    }
+}
+
+
 
 int dbuResultAsInt32(DBUResult *r, int32_t *result) {
     int64_t i;

mercurial