Software / code / prosody
Comparison
util/sql.lua @ 8084:655837e9eeeb
util.sql: Produce more SQL-standard-like debug messages
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Thu, 13 Apr 2017 22:37:35 +0200 |
| parent | 8077:29b3957db212 |
| child | 8186:becb593ed86d |
comparison
equal
deleted
inserted
replaced
| 8082:8ca11201bfe7 | 8084:655837e9eeeb |
|---|---|
| 159 } }; | 159 } }; |
| 160 | 160 |
| 161 local function debugquery(where, sql, ...) | 161 local function debugquery(where, sql, ...) |
| 162 local i = 0; local a = {...} | 162 local i = 0; local a = {...} |
| 163 sql = sql:gsub("\n?\t+", " "); | 163 sql = sql:gsub("\n?\t+", " "); |
| 164 log("debug", "[%s] %s", where, sql:gsub("%?", function () i = i + 1; local v = a[i]; if type(v) == "string" then v = ("%q"):format(v); end return tostring(v); end)); | 164 log("debug", "[%s] %s", where, sql:gsub("%?", function () |
| 165 i = i + 1; | |
| 166 local v = a[i]; | |
| 167 if type(v) == "string" then | |
| 168 v = ("'%s'"):format(v:gsub("'", "''")); | |
| 169 end | |
| 170 return tostring(v); | |
| 171 end)); | |
| 165 end | 172 end |
| 166 | 173 |
| 167 function engine:execute_query(sql, ...) | 174 function engine:execute_query(sql, ...) |
| 168 sql = self:prepquery(sql); | 175 sql = self:prepquery(sql); |
| 169 local stmt = assert(self.conn:prepare(sql)); | 176 local stmt = assert(self.conn:prepare(sql)); |