2个回答
展开全部
db2 => CREATE TABLE test_create_tab2 (
db2 (cont.) => id INT NOT NULL PRIMARY KEY generated always as identity,
db2 (cont.) => val VARCHAR(10)
db2 (cont.) => );
DB20000I SQL 命令成功完成。
db2 => INSERT INTO test_create_tab2(val) VALUES ('NO id');
DB20000I SQL 命令成功完成。
这里和 SQL Server 一样,大家都不能手动指定那个 自增id 的数值
db2 => INSERT INTO test_create_tab2(id, val) VALUES (1, 'id no use');
DB21034E 该命令被当作 SQL 语句来处理,因为它是无效的“命令行处理器”命令。在
SQL 处理期间,它返回:
SQL0798N 不能为定义为 GENERATED ALWAYS 的列 "ID" 指定值。 SQLSTATE=428C9
这里和 SQL Server 不一样,SQL Server 会自动排除掉那个自动递增的列
db2 => INSERT INTO test_create_tab2 VALUES ('Is Auto ?');
DB21034E 该命令被当作 SQL 语句来处理,因为它是无效的“命令行处理器”命令。在
SQL 处理期间,它返回:
SQL0117N 赋值数目与指定的或隐含的列数或变量数不一样。 SQLSTATE=42802
关于 初始数值的设定。
db2 => drop TABLE test_create_tab2;
DB20000I SQL 命令成功完成。
db2 => CREATE TABLE test_create_tab2 (
db2 (cont.) => id INT NOT NULL PRIMARY KEY generated always as identity
db2 (cont.) => (Start With 100
db2 (cont.) => Increment by 1
db2 (cont.) => minvalue 100
db2 (cont.) => maxvalue 999999999
db2 (cont.) => no cycle cache 5 no order),
db2 (cont.) => val VARCHAR(10)
db2 (cont.) => );
DB20000I SQL 命令成功完成。
db2 => INSERT INTO test_create_tab2(val) VALUES ('NO id');
DB20000I SQL 命令成功完成。
db2 => select * from test_create_tab2;
ID VAL
----------- ----------
100 NO id
1 条记录已选择。
db2 => select identity_val_local() from SYSIBM.SYSDUMMY1;
1
---------------------------------
100.
1 条记录已选择。
db2 (cont.) => id INT NOT NULL PRIMARY KEY generated always as identity,
db2 (cont.) => val VARCHAR(10)
db2 (cont.) => );
DB20000I SQL 命令成功完成。
db2 => INSERT INTO test_create_tab2(val) VALUES ('NO id');
DB20000I SQL 命令成功完成。
这里和 SQL Server 一样,大家都不能手动指定那个 自增id 的数值
db2 => INSERT INTO test_create_tab2(id, val) VALUES (1, 'id no use');
DB21034E 该命令被当作 SQL 语句来处理,因为它是无效的“命令行处理器”命令。在
SQL 处理期间,它返回:
SQL0798N 不能为定义为 GENERATED ALWAYS 的列 "ID" 指定值。 SQLSTATE=428C9
这里和 SQL Server 不一样,SQL Server 会自动排除掉那个自动递增的列
db2 => INSERT INTO test_create_tab2 VALUES ('Is Auto ?');
DB21034E 该命令被当作 SQL 语句来处理,因为它是无效的“命令行处理器”命令。在
SQL 处理期间,它返回:
SQL0117N 赋值数目与指定的或隐含的列数或变量数不一样。 SQLSTATE=42802
关于 初始数值的设定。
db2 => drop TABLE test_create_tab2;
DB20000I SQL 命令成功完成。
db2 => CREATE TABLE test_create_tab2 (
db2 (cont.) => id INT NOT NULL PRIMARY KEY generated always as identity
db2 (cont.) => (Start With 100
db2 (cont.) => Increment by 1
db2 (cont.) => minvalue 100
db2 (cont.) => maxvalue 999999999
db2 (cont.) => no cycle cache 5 no order),
db2 (cont.) => val VARCHAR(10)
db2 (cont.) => );
DB20000I SQL 命令成功完成。
db2 => INSERT INTO test_create_tab2(val) VALUES ('NO id');
DB20000I SQL 命令成功完成。
db2 => select * from test_create_tab2;
ID VAL
----------- ----------
100 NO id
1 条记录已选择。
db2 => select identity_val_local() from SYSIBM.SYSDUMMY1;
1
---------------------------------
100.
1 条记录已选择。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询