Sun, 16 Feb 2025 09:30:18 +0100
add dbuConnectionExec
| dbutils/db.c | file | annotate | diff | comparison | revisions | |
| dbutils/dbutils/db.h | file | annotate | diff | comparison | revisions | |
| test/main.c | file | annotate | diff | comparison | revisions |
--- a/dbutils/db.c Sat Jan 04 13:03:01 2025 +0100 +++ b/dbutils/db.c Sun Feb 16 09:30:18 2025 +0100 @@ -29,6 +29,18 @@ #include "db.h" #include "dbutils/db.h" +int dbuConnectionExec(DBUConnection *conn, const char *sql) { + DBUQuery *q = conn->createQuery(conn, NULL); + int err = 1; + if(!dbuQuerySetSQL(q, sql)) { + err = dbuQueryExec(q); + } + dbuQueryFree(q); + return err; +} + + + int dbuQuerySetSQL(DBUQuery *q, const char *sql) { return q->setSQL(q, sql); }
--- a/dbutils/dbutils/db.h Sat Jan 04 13:03:01 2025 +0100 +++ b/dbutils/dbutils/db.h Sun Feb 16 09:30:18 2025 +0100 @@ -96,6 +96,7 @@ int rowIndex; }; +int dbuConnectionExec(DBUConnection *conn, const char *sql); int dbuQuerySetSQL(DBUQuery *q, const char *sql); int dbuQuerySetParamString(DBUQuery *q, int index, cxstring str);
--- a/test/main.c Sat Jan 04 13:03:01 2025 +0100 +++ b/test/main.c Sun Feb 16 09:30:18 2025 +0100 @@ -152,6 +152,11 @@ } DBUConnection *conn = dbuSQLiteConnectionFromDB(db, true); + + // test dbuConnectionExec + int execResult = dbuConnectionExec(conn, "drop table if exists test_table;"); + printf("exec result: %d\n\n", execResult); + DBUQuery *query = conn->createQuery(conn, NULL); dbuQuerySetSQL(query, "select p.*, a.address_id as [__address__address_id], a.street, a.zip, a.city from Person p inner join Address a on p.address_id = a.address_id;");