【发布时间】:2014-05-22 11:50:08
【问题描述】:
我找不到用 Clojure 插入 Postgres 数组类型的方法。
(sql/insert! db :things {:animals ["cow" "pig"]})
没有达到我的预期。错误信息:
PSQLException Can't infer the SQL type to use for an instance of clojure.lang.PersistentVector. Use setObject() with an explicit Types value to specify the type to use. org.postgresql.jdbc2.AbstractJdbc2Statement.setObject (AbstractJdbc2Statement.java:1936)
即使是我能找到的最直接的 SQL 访问也不起作用:
(sql/execute! db "INSERT INTO things (animals) VALUES ('{\"cow\", \"pig\"}')")
真的不知道这里发生了什么:
ClassCastException java.lang.Character cannot be cast to java.lang.String clojure.java.jdbc/prepare-statement (jdbc.clj:419)
肯定有可能吗?如果不是通过辅助函数,那么通过某种方式执行原始 SQL。
【问题讨论】:
标签: sql postgresql jdbc clojure