我們在插入數據到數據庫中的時候,常用的語句如下:
INSERT INTO table1(id, name, address) VALUES(1, ygl, 'beijing')——適用於T-sql和PL/SQL;
SELECT id, name, address INTO table2 FROM table1——自動創建table2,T-sql用法;
INSERT INTO table2(id, name, address) SELECT id, name, address FROM table1
這裡簡單說一下第三句,由於可以指定插入到talbe2中的列,以及可以通過相對較復雜的查詢語句進行數據源獲取,可能使用起來會更加的靈活一些,但我們也必須注意,我們在指定目標表的列時,一定要將所有非空列都填上,否則將無法進行數據插入,還有一點比較容易出錯的地方就是,當我們寫成如下簡寫格式:
INSERT INTO table2 SELECT id, name, address FROM table1
此時,我們如果略掉了目標表的列的話,則默認會對目標表的全部列進行數據插入,且SELECT後面的列的順序 必須和目標表中的列的定義順序完全一致 才能完成正確的數據插入,這是一個很容易被忽略的地方,值得注意。