Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql DB2自动增量在重新启动后自行更改_Sql_Db2 - Fatal编程技术网

Sql DB2自动增量在重新启动后自行更改

Sql DB2自动增量在重新启动后自行更改,sql,db2,Sql,Db2,每次我重新启动DB2服务时,auto increment字段总是自行更改, 例如:在我重新启动之前,自动增量值为13,并且递增1,在我重新启动之后,它总是变为31,并且总是递增20 你知道这是什么原因吗 每次重新启动Db2服务时,我都必须执行这个命令 ALTER TABLE <table> ALTER COLUMN <column> RESTART WITH 1 ALTER TABLE ALTER COLUMN用1重新启动 来自: “自动递增允许在将新记录插入表时生成唯

每次我重新启动DB2服务时,auto increment字段总是自行更改, 例如:在我重新启动之前,自动增量值为13,并且递增1,在我重新启动之后,它总是变为31,并且总是递增20 你知道这是什么原因吗

每次重新启动Db2服务时,我都必须执行这个命令

ALTER TABLE <table> ALTER COLUMN <column> RESTART WITH 1
ALTER TABLE ALTER COLUMN用1重新启动
来自:

“自动递增允许在将新记录插入表时生成唯一的编号。”

这是您可能期望的唯一结果:唯一(=不冲突)的数字。这些数据的生成方式由DBMS决定。您不能期望数字序列没有任何间隙

例如,出于性能原因,DBMS可能会选择“预分配”十个数字(23..32,33..42,…)的块,因此自动递增字段只能为每(最多)十条记录递增一次。如果您有一个
INSERT
语句,在新创建的表中只插入5条记录,那么它可以“获取一个包含10个数字的块”(0..9),使用它的前五个值(0..4),并保留其余未使用的值。通过获取这一组数字,计数器从0增加到10。因此,下一个获取块的INSERT语句将获得10到19之间的数字。

来源:

“自动递增允许在将新记录插入表时生成唯一的编号。”

这是您可能期望的唯一结果:唯一(=不冲突)的数字。这些数据的生成方式由DBMS决定。您不能期望数字序列没有任何间隙


例如,出于性能原因,DBMS可能会选择“预分配”十个数字(23..32,33..42,…)的块,因此自动递增字段只能为每(最多)十条记录递增一次。如果您有一个
INSERT
语句,在新创建的表中只插入5条记录,那么它可以“获取一个包含10个数字的块”(0..9),使用它的前五个值(0..4),并保留其余未使用的值。通过获取这一组数字,计数器从0增加到10。因此,下一个获取块的INSERT语句将获得10到19之间的数字。

DB2有一个生成值的缓存,以减少生成值的开销(减少IO)。此缓存将存储在内存中,并根据请求分配值

创建/更改表时,请查看缓存选项。默认情况下,缓存值为20

理解sequeneces在DB2中的工作方式很重要。序列与生成的值/标识列共享许多概念

  • 创建表
  • 更改表格
  • 序列

DB2有一个生成值的缓存,以减少生成值的开销(减少IO)。此缓存将存储在内存中,并根据请求分配值

创建/更改表时,请查看缓存选项。默认情况下,缓存值为20

理解sequeneces在DB2中的工作方式很重要。序列与生成的值/标识列共享许多概念

  • 创建表
  • 更改表格
  • 序列

我尝试使用此函数更改表alter table INVORITY alter COLUMN ID RESTART WITH 11 CACHE 1;但是它似乎不是正确的格式我试图使用这个函数改变表altertable INVENTORY alter COLUMN ID RESTART WITH 11 CACHE 1;但它的格式似乎不正确