db2資料庫插入數據
1. db2中插入數據後直接返回主鍵(自增列id)的sql怎麼寫
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 條記錄已選擇。
2. 如何向資料庫的表中輸入數據
方法/步驟
1、在sql server 2008中,滑鼠右鍵點擊新建好的數據表dbo.Table_1,選擇編輯前200行。