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

SQL Server 利用 XML 批次插入多筆資料技巧

     編輯:關於SqlServer

需一次插入多筆資料時,可將資料組成 XML 文件,以 VARCHAR 傳入預存程序,再用 sp_xml_preparedocument 解析、OPENXML 映射至資料表結構、INSERT ... SELECT 批次寫入,最後 sp_xml_removedocument 釋放記憶體。附最小可執行範例。

範例程式碼

DECLARE @xml NVARCHAR(2000) = N'

  
  
';

DECLARE @idoc INT;
EXEC sp_xml_preparedocument @idoc OUTPUT, @xml;

INSERT INTO tbl (Name, Intro)
SELECT Name, Intro
FROM OPENXML(@idoc, N'/root/dbo.tbl')
WITH (Name VARCHAR(50), Intro VARCHAR(200));

EXEC sp_xml_removedocument @idoc;

優點

  • 單一呼叫插入任意筆數,減少網路往返。
  • 結構化資料傳遞,避免動態 SQL 拼接風險。
  • 可搭配 Table-Valued Parameters (SQL 2008+) 更佳效能。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved