小编Roh*_*itS的帖子

Java.SQL错误:准备语句不在批处理模式下

我正在使用带有后端HSQL的Java.我准备好的声明早先工作正常.最近,我在department和items表之间创建了依赖关系,并将自动生成的seq_id中的dep_seq_id列设置为一个简单的列(我们现在通过java代码更新id).在这些更改之后,所有依赖表创建/更新都会失败,并出现错误,例如"语句不在批处理模式下".

表结构如下:

CREATE TABLE DEPARTMENT
  (
    DEP_SEQ_ID  INTEGER NOT NULL,
    DEPT_STATE  VARCHAR(6) NOT NULL,
    NAME        VARCHAR(20) NOT NULL,
    YEAR        VARCHAR(4),
    CREATE_DATE DATE,
    LINK        VARCHAR(255),
    PRIMARY KEY(SEQ_ID,DEPT_STATE)
  );

CREATE TABLE ITEMS
  (
    ITEM_ID    INTEGER NOT NULL,
    ITEM_STATE VARCHAR(6) NOT NULL,
    NAME       VARCHAR(20),
    ITEM_CODE  VARCHAR(10),
    DEP_SEQ_ID INTEGER,
    DEPT_STATE VARCHAR(6),
    FOREIGN KEY(DEP_SEQ_ID,DEPT_STATE) REFERENCES DEPARTMENT(SEQ_ID, DEPT_STATE) ON
  DELETE CASCADE ON
  UPDATE CASCADE
  );
Run Code Online (Sandbox Code Playgroud)

我不明白我在做错了什么.以下是我试图在Items表中插入数据的代码,部分代码如下所示.我希望它有意义,我已经更改了名称和列,因为我无法分享实际的代码.

 PreparedStatement statement = null;
    ResultSet generatedKeys = null;
    Long mappingId = null;

    try {
        statement = m_connection.prepareStatement("insert into ITEMS (ITEM_ID, …
Run Code Online (Sandbox Code Playgroud)

java jdbc hsqldb

2
推荐指数
1
解决办法
2638
查看次数

标签 统计

hsqldb ×1

java ×1

jdbc ×1