是否可以使用 JavaDB 更改预先存在的表上的自动增量偏移量?

我遇到的问题是,插入新记录通常(但并非总是)失败,并出现错误,抱怨使用现有键(我的自动增量列)。为了填充该数据库,我从另一个数据库 (MySQL) 中获取了转储,并使用 JavaDB 存储过程将它们全部插入到相应的 JavaDB 表中。我的理论是,插入这些记录会复制 MySQL 表中的现有 ID。现在,自动增量功能正在分发现有的 ID。我认为明确地将偏移量设置为某个较高的数字将允许自动增量再次起作用。

有帮助吗?

解决方案 2

我不知道如何直接更改偏移量,但我设法通过以下方式解决此问题:

  1. 将增量金额更改 X(在我的例子中为 100 万)。
  2. 插入虚拟记录。
  3. 将增量减少回 1。
  4. 删除虚拟记录。

我用这个SQL语句来改变增量数量:

ALTER TABLE tbl ALTER COLUMN col SET INCREMENT BY x

其他提示

即使它不是一个直接的问题的答案: 使用MySQL,你可以做一个

ALTER TABLE my_little_table AUTO_INCREMENT =2000

要设置自动增量值。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top