Software /
code /
prosody
Diff
plugins/mod_storage_sql.lua @ 4044:61ae809da8ee
mod_storage_sql: Dynamically replace backquotes with double quotes when connecting to PostgreSQL...
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Mon, 27 Dec 2010 06:10:35 +0500 |
parent | 4043:d3f5c60a72b1 |
child | 3977:6724853adb80 |
line wrap: on
line diff
--- a/plugins/mod_storage_sql.lua Mon Dec 27 06:10:35 2010 +0500 +++ b/plugins/mod_storage_sql.lua Mon Dec 27 06:10:35 2010 +0500 @@ -29,12 +29,13 @@ local connection = ...; local host,user,store = module.host; +local params = module:get_option("sql"); do -- process options to get a db connection local DBI = require "DBI"; - local params = module:get_option("sql") or { driver = "SQLite3", database = "prosody.sqlite" }; - assert(params and params.driver and params.database, "invalid params"); + params = params or { driver = "SQLite3", database = "prosody.sqlite" }; + assert(params.driver and params.database, "invalid params"); prosody.unlock_globals(); local dbh, err = DBI.Connect( @@ -85,6 +86,9 @@ end local function getsql(sql, ...) + if params.driver == "PostgreSQL" then + sql = sql:gsub("`", "\""); + end -- do prepared statement stuff local stmt, err = connection:prepare(sql); if not stmt then return nil, err; end