在Derby数据库中不向主自动增量键中插入任何内容

时间:2016-02-20 16:57:34

标签: java database derby

我在Derby数据库中创建了类似的表:

  

创建表“DATABASE”.SOMETABLE(ID INTEGER NOT NULL NULL始终生成   作为身份(从1开始,增加1)约束PK主要密钥,     SOMETHING VARCHAR(50)not null)

现在我希望能够插入到该表中,而无需专门列出我要插入的所有列。所以我想做这样的事情:

  

插入某些值('','某事')

我不想在id列中插入任何内容,但我不想强制总是列出我要插入的所有列的名称。但是,如果我执行此代码,我会尝试修改自动增量主键时出错。 在MySQL和许多其他数据库系统中,我可以这样做:

  

插入某些值('','某事')

它会起作用,但德比给了我一个错误。我试过把NULL而不是''但是我得到了同样的错误。有没有办法不在Derby数据库中自动增加(没有专门列出所有其他列)的主键列中插入任何东西?

提前感谢您的任何答案。

2 个答案:

答案 0 :(得分:1)

指定您要插入的列:

insert into sometable (something) values ('something')

(我建议一般指定列,然后DDL中列的顺序无关紧要)

答案 1 :(得分:0)

使用:

insert into sometable values (default, 'something')

默认关键字记录为here