【发布时间】:2016-02-12 18:44:21
【问题描述】:
我想用 Korma 执行以下原始 SQL:
k/exec-raw
["INSERT INTO events ?, VALUES ? ON CONFLICT (id) DO UPDATE SET title = EXCLUDED.title;" [keys values]]
参数等于:
keys (str "(" (keys->str res) ")")
values (str "(" (serialize (merge res) ", ") ")" )
两者都评估以纠正字符串并在 repl 中工作。
但在运行时我在 psql 控制台中出现以下错误:
ERROR: syntax error at or near "$1" at character 20
STATEMENT: INSERT INTO events $1, VALUES $2 ON CONFLICT (id) DO UPDATE SET title = EXCLUDED.title
无法弄清楚是什么问题。有人用 Korma 做过插入吗?
PostgreSQL 9.5 + Korma 0.4.2
【问题讨论】:
-
参数不能这样工作,你不能提供部分 sql(或列名)作为参数。
-
你能再详细点吗?
标签: postgresql clojure korma sqlkorma