sql - 使用存储过程批量插入/更新

标签 sql sql-server

谁能给我一个示例脚本,用于在 SQL Server 中使用存储过程批量插入/更新表中的记录?

最佳答案

我过去做过类似的事情:

CREATE PROCEDURE InsertProductIds(@ProductIds xml) AS

INSERT INTO Product (ID) 
SELECT ParamValues.ID.value('.', 'VARCHAR(20)')
FROM   @ProductIds.nodes('/Products/id') as ParamValues(ID) 

END

显然这只是一个单列表,但 XML 方法也适用于多列表。然后你这样做:

EXEC InsertProductIds @ProductIds='<Products><id>3</id><id>6</id></Products>'

关于sql - 使用存储过程批量插入/更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3896439/

相关文章:

sql - 合并多个表中的值而不重复

c# - Entity Framework 4 + 存储过程

php - 如何在使用 PHP 导入 SQL 之前正确转义 CSV 文件

mysql - SQL查询多行

mysql - 忽略旧 last_updated 记录时的插入

sql-server - 需要 SSDT 循环引用/ Unresolved reference 解决方法

sql-server - SQL Server 中的encode(<columnName>, 'escape' ) PostgreSQL 等效项是什么?

c# - 应用程序配置文件中 SQL Server 2008(版本 10.0.1600)的连接字符串

MySql 触发更新、插入和删除

php - 将 datetime 转换为 varchar 从 MSSQL 到 MYSQL