是否可以在多个表中使用自增id?
我的意思是——我有(比方说五个)表格,其中一个表格包含有关销售的信息(sale_id、sold_item_id),另外四个表格包含有关不同种类的已售商品的信息。我希望这四个共享一个 ID 池。我该怎么做?
编辑。
我决定选择 Juxhin 解决方案,并创建了额外的表。每次我在这 4 个表中的一个中创建记录时,我都会在该附加表中自动递增新 ID,并且该 ID 位于该新行的列之一中。
最佳答案
这听起来像是 sequence 的用例并且该链接似乎表明 javadb 支持这一点。
因此您为所有表创建了一个公共(public)序列:
CREATE SEQUENCE MASEQUENCE
然后在插入表格时使用它:
INSERT INTO TAB1(ID,....) VALUES(NEXT VALUE FOR MYSEQUENCE,...)
每个 NEXT VALUE
都会推进序列,因此所有 id 在所有表中都是唯一的。
关于JavaDB - 几个表之间的自动增量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25370711/