我试图使用ActiveJDBC与HSQLDB:无法插入对象HSQLDB与ActiveJDBC
Users.sql
CREATE TABLE users (
"ID" INTEGER GENERATED BY DEFAULT AS SEQUENCE seq NOT NULL PRIMARY KEY,
FIRST_NAME VARCHAR(100) NOT NULL,
LAST_NAME VARCHAR(100) NOT NULL
);
User.java
@IdName("ID")
public class User extends Model {....}
Main.java
User u = new User();
u.setFirstName("first_name");
u.setLastName("last_name");
u.save();
当我试图挽救新排我哈有以下例外情况:
org.javalite.activejdbc.DBException: java.sql.SQLSyntaxErrorException: user lacks privilege or object not found: id, Query: INSERT INTO users (first_name, last_name) VALUES (?, ?), params: first_name,last_name
我认为插入查询时小写的问题。我如何解决这个问题?
为什么创建脚本中的双引号中的ID名称是正确的? – Gimby
正如我从文档理解双引号使字段名称感知 –
这与框架无关。尝试在没有ActiveJDBC的情况下执行相同的操作并解决特权问题:INSERT INTO用户(first_name,last_name)VALUES(?,?)。 此外,HSQL不在受支持的数据库列表中:http://javalite.io/activejdbc#supported-databases,但大多数情况下仍然可以使用。 – ipolevoy