JavaDB - 几个表之间的自动增量

时间:2014-08-18 19:32:14

标签: java sql derby javadb

是否可以在多个表中自动增量ID?
我的意思是 - 我有(比如五个)表,其中一个是包含销售信息的表(sale_id,sold_item_id),另外四个包含有关不同类型的销售信息的信息。我希望这四个共享一个ID池。我该怎么做?

编辑。
我决定选择Juxhin解决方案,我创建了额外的表格。每次我在这4个表中的一个表中创建一个记录时,我会在该附加表中自动增加新的id,并且该id位于该新行的一列中。

2 个答案:

答案 0 :(得分:1)

这听起来像是sequence的用例,而链接似乎表明javadb支持这一点。

因此,您为所有表创建一个公共序列:

CREATE SEQUENCE MASEQUENCE

然后在插入表格时使用它:

 INSERT INTO TAB1(ID,....) VALUES(NEXT VALUE FOR MYSEQUENCE,...)

每个NEXT VALUE都会推进序列,因此所有ID都将在所有表中都是唯一的。

答案 1 :(得分:0)

如果您希望在其中一个表中插入新记录时将其插入到所有5个表中,则可以为此创建一个触发器。

在其他表的id列上创建外键(以使表保持同步)也可能会有所帮助。