From ac607213fc6922f836f24e358f983de38ab65430 Mon Sep 17 00:00:00 2001 From: Sky Johnson Date: Sat, 24 May 2025 11:39:13 -0500 Subject: [PATCH] add exists helper to sqlite wrapper --- runner/lua/sqlite.lua | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/runner/lua/sqlite.lua b/runner/lua/sqlite.lua index 0a24190..a5a66fc 100644 --- a/runner/lua/sqlite.lua +++ b/runner/lua/sqlite.lua @@ -263,6 +263,21 @@ local connection_mt = { return results[1] end, + exists = function(self, table_name, where, params, ...) + if type(table_name) ~= "string" then + error("connection:exists: table_name must be a string", 2) + end + + local query = "SELECT 1 FROM " .. table_name + if where then + query = query .. " WHERE " .. where + end + query = query .. " LIMIT 1" + + local results = self:query(query, normalize_params(params, ...)) + return #results > 0 + end, + begin = function(self) return self:exec("BEGIN TRANSACTION") end,