使用START WITH
和INCREMENT BY
标识选项:
CREATE TABLE r247585lib/cooltable
(EMPNO BIGINT GENERATED ALWAYS AS IDENTITY
(START WITH 500010000000, INCREMENT BY 15),
NAME CHAR(30),
SALARY DECIMAL(5,2),
DEPT SMALLINT)
将EMPNO
需要声明为,BIGINT
因为示例起始值不适合 32 位整数数据类型。
| TYPE | MIN | MAX |
|---------+----------------------------+----------------------------|
| INTEGER | -2 147 483 648 | +2 147 483 647 |
| BIGINT | -9 223 372 036 854 775 808 | +9 223 372 036 854 775 807 |
作为参考,可用的身份选项和用法如下:
|--AS IDENTITY--+------------------------------------------------------+--|
| .--------------------------------------------. |
| V .-1----------------. (1) | |
'-(----+-START WITH--+-numeric-constant-+---+-----+--)-'
| .-1----------------. |
+-INCREMENT BY--+-numeric-constant-+-+
| .-NO MINVALUE----------------. |
+-+-MINVALUE--numeric-constant-+-----+
| .-NO MAXVALUE----------------. |
+-+-MAXVALUE--numeric-constant-+-----+
| .-NO CYCLE-. |
+-+-CYCLE----+-----------------------+
| .-CACHE--20------. |
+-+-NO CACHE-------+-----------------+
| '-CACHE--integer-' |
| .-NO ORDER-. |
'-+-ORDER----+-----------------------'
有关更多信息,请参阅有关CREATE TABLE的文档。
我建议使用GENERATED BY DEFAULT
,以便您可以在需要时使用预先分配的身份密钥插入现有数据。