【发布时间】:2011-07-23 05:58:31
【问题描述】:
我正在尝试使用 clojure.java.jdbc 将行插入数据库。 (有问题的数据库是 sqlite)。
我可以这样创建一个表:
(def db {:classname "org.sqlite.JDBC"
:subprotocol "sqlite"
:subname "/path/to/my/database"})
(with-connection db (create-table :foo [:bar :int]
[:baz :int]
[:timestamp :datetime]))
这很有效。但是,如果我尝试在数据库中插入一行,则会失败:
(with-connection db (insert-rows :foo
[1 2 (java.sql.Timestamp. (.getTime (java.util.Date.)))]))
给出异常:断言失败:参数计数 (3) != 值计数 (6)。
但如果我在表定义和插入行操作中省略了时间戳字段,则没有问题。那么我在时间戳方面做错了什么?
【问题讨论】: