是否可以在多个表中自动增量ID?
我的意思是 - 我有(比如五个)表,其中一个是包含销售信息的表(sale_id,sold_item_id),另外四个包含有关不同类型的销售信息的信息。我希望这四个共享一个ID池。我该怎么做?
编辑。
我决定选择Juxhin解决方案,我创建了额外的表格。每次我在这4个表中的一个表中创建一个记录时,我会在该附加表中自动增加新的id,并且该id位于该新行的一列中。
答案 0 :(得分:1)
这听起来像是sequence的用例,而链接似乎表明javadb支持这一点。
因此,您为所有表创建一个公共序列:
CREATE SEQUENCE MASEQUENCE
然后在插入表格时使用它:
INSERT INTO TAB1(ID,....) VALUES(NEXT VALUE FOR MYSEQUENCE,...)
每个NEXT VALUE
都会推进序列,因此所有ID都将在所有表中都是唯一的。
答案 1 :(得分:0)
如果您希望在其中一个表中插入新记录时将其插入到所有5个表中,则可以为此创建一个触发器。
在其他表的id列上创建外键(以使表保持同步)也可能会有所帮助。