diff options
author | Milos Negovanovic <milos.negovanovic@gmail.com> | 2014-09-26 11:23:13 +0100 |
---|---|---|
committer | Milos Negovanovic <milos.negovanovic@gmail.com> | 2014-09-26 11:23:13 +0100 |
commit | f59ac26b85302808f135aab5309c7683c4b8f405 (patch) | |
tree | 348d5dbb398571eac9a176283f1879d48450dbea /lib/impure | |
parent | b22f858111cc611673d7aef4111b41d8a9231efc (diff) | |
download | Nim-f59ac26b85302808f135aab5309c7683c4b8f405.tar.gz |
Tweaks for postgres driver (not tested yet).
Diffstat (limited to 'lib/impure')
-rw-r--r-- | lib/impure/db_postgres.nim | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/impure/db_postgres.nim b/lib/impure/db_postgres.nim index c375d9191..67e769ed2 100644 --- a/lib/impure/db_postgres.nim +++ b/lib/impure/db_postgres.nim @@ -60,7 +60,10 @@ proc dbFormat(formatstr: TSqlQuery, args: varargs[string]): string = var a = 0 for c in items(string(formatstr)): if c == '?': - add(result, dbQuote(args[a])) + if args[a] == nil: + add(result, "NULL") + else: + add(result, dbQuote(args[a])) inc(a) else: add(result, c) @@ -124,7 +127,10 @@ proc setRow(res: PPGresult, r: var TRow, line, cols: int32) = for col in 0..cols-1: setLen(r[col], 0) var x = PQgetvalue(res, line, col) - add(r[col], x) + if x == nil: + r[col] = nil + else: + add(r[col], x) iterator fastRows*(db: TDbConn, query: TSqlQuery, args: varargs[string, `$`]): TRow {.tags: [FReadDB].} = |