Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
允许为表设置下一个标识值。使用此过程可以改变将要插入的下一行的 AUTOINCREMENT 值。
sa_reset_identity( tbl_name [, owner_name [, new_identity ] ] )
tbl_name 使用此 CHAR(128) 参数指定要为其重置标识值的表。如果未指定表的所有者,则 tbl_name 必须唯一标识数据库中的表。
owner_name 使用此可选的 CHAR(128) 参数指定要为其重置标识值的表的所有者。缺省值为 NULL。如果未指定 owner_name,则使用第三个参数的指定参数值。例如:
CALL sa_reset_identity( 'Employees', new_identity=100 );
new_identity 使用此可选的 BIGINT 参数指定自动增量将从哪个值开始进行。缺省值为 NULL。
为插入到表中的行生成的下一个标识值是 new_identity + 1。
不发生检查以查看 new_identity + 1 是否与表中的现有行冲突。例如,如果指定 new_identity 为 100,则插入的下一行的标识值将为 101。然而,如果表中已经存在 101,则行插入失败。
sa_reset_identity 系统过程不能在没有缺省的 AUTOINCREMENT 列或 GLOBAL AUTOINCREMENT 列的表上使用。
您必须是表的所有者,或者具有 ALTER ANY TABLE 系统特权。
导致在值更新后执行检查点操作
以下语句将下一个标识值重置为 101:
CALL sa_reset_identity( 'Employees', 'GROUPO', 100 );