首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> SQL Server 2008

SQL Server 單一陳述式批次插入多筆資料三種寫法

     編輯:SQL Server 2008

方法一:多行 INSERT VALUES(傳統)

INSERT INTO MyTable(ID, NAME) VALUES(1,'123');
INSERT INTO MyTable(ID, NAME) VALUES(2,'456');
INSERT INTO MyTable(ID, NAME) VALUES(3,'789');

缺點:冗長、易漏分號/逗號、維護困難。

方法二:INSERT ... SELECT ... UNION ALL

INSERT INTO MyTable(ID, NAME)
SELECT 4,'000'
UNION ALL
SELECT 5,'001'
UNION ALL
SELECT 6,'002';

優點:單一陳述式、可讀性佳、效能略優於多行 INSERT。

方法三:SQL Server 2008+ 行建構子(推薦)

INSERT INTO MyTable(ID, NAME)
VALUES (7,'003'), (8,'004'), (9,'005');

優點:語法最簡潔、標準 SQL、效能最佳、支援千筆以上批次插入(建議分批 1000 筆)。

總結

SQL Server 2008 以上環境請優先使用方法三(行建構子),舊版本用方法二。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved