2022-12-16 09:06:45 (UTC-03:00)
Marcel Rodrigues <marcelgmr@gmail.com>
sqlite: add get_rows() to build a lua table from query results
diff --git a/src/sqlite.lua b/src/sqlite.lua index 6e7d488..a2c104b 100644 --- a/src/sqlite.lua +++ b/src/sqlite.lua @@ -26,6 +26,21 @@ function DB:execute(sql, cb, arg) end end +function DB:get_rows(sql) + local rows = {} + self:execute(sql, function (obj, argc, argv, col) + local row = {} + for i = 0, argc-1 do + local col_name = ffi.string(col[i]) + local col_value = ffi.string(argv[i]) + row[col_name] = col_value + end + table.insert(rows, row) + return 0 + end) + return rows +end + function DB:close() C.sqlite3_close(self.db) end