У меня есть таблица БД, которая использует следующую схему:
CREATE TABLE users
(id SERIAL PRIMARY KEY,
username TEXT UNIQUE NOT NULL,
password TEXT NOT NULL,
email TEXT NOT NULL,
admin BOOLEAN NOT NULL,
active BOOLEAN NOT NULL,
created DATE NOT NULL);
Я использую Корму, определяя users
сущность
(defentity users
(has-many tips))
И я пытаюсь заполнить значения, используя следующие функции:
(defn make-user-vals [username pass email]
"Creates an active, non-admin user"
{:username username,
:password (crypt/encrypt pass),
:email email,
:admin false,
:active true,
:created (java.util.Date.)})
(defn seed-users! []
(insert ent/users
(values
(users/make-user-vals "admin" "f00b4r" "foo@example.com"))))
(seed-users!)
терпит неудачу со следующим (не очень информативным для моих глаз) сообщением:
Failure to execute query with SQL:
INSERT INTO users (username, password, email, admin, active, created) VALUES (?, ?, ?, FALSE, TRUE, ?) :: [admin $2a$10$AVdxz9HvYOyszhcXVrTVi.oBcbz9EZVfGZYNUI3iDMb0hj3igvpEy foo@example.com #<Date Wed Feb 15 21:59:10 CET 2012>]
ClassCastException java.lang.RuntimeException cannot be cast to java.sql.SQLException clojure.java.jdbc/print-sql-exception (jdbc.clj:350)
Есть идеи, почему?
(если это помогает, запрос к БД работает, поэтому это не выглядит как проблема с подключением)
Спасибо!