Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 使用xml或存储过程进行动态插入_Sql Server_Xml - Fatal编程技术网

Sql server 使用xml或存储过程进行动态插入

Sql server 使用xml或存储过程进行动态插入,sql-server,xml,Sql Server,Xml,我有20个记录组,我需要在一个连接中批量插入它们,所以有两个解决方案(XML或存储过程)。此操作经常执行,因此我需要快速的性能和最少的开销 1) 我认为XML的执行速度较慢,但我们可以通过生成适当的XML来自由指定需要批量插入多少条记录,我不知道记录中每个字段的值,可能有一些字符使XML格式不正确,比如在值中使用“或”字段标记,那么我应该如何防止这种行为 2) 使用存储过程更快,但我需要定义所有输入参数,这是一项枯燥的任务,如果我需要增加或减少批插入的记录数,那么我需要更改SP 因此,在我的环境

我有20个记录组,我需要在一个连接中批量插入它们,所以有两个解决方案(XML或存储过程)。此操作经常执行,因此我需要快速的性能和最少的开销

1) 我认为XML的执行速度较慢,但我们可以通过生成适当的XML来自由指定需要批量插入多少条记录,我不知道记录中每个字段的值,可能有一些字符使XML格式不正确,比如在值中使用“或”字段标记,那么我应该如何防止这种行为

2) 使用存储过程更快,但我需要定义所有输入参数,这是一项枯燥的任务,如果我需要增加或减少批插入的记录数,那么我需要更改SP


因此,在我的环境中,哪种解决方案相对于约束更好可能是更好的选择,但是还有其他选择

如果您使用的是SQL Server 2008,则可以使用

从.NET2.0开始,您可以选择使用

如果您使用的是oracle,您可以通过一个测试,但我不确定ODP和oracle的哪个版本可以使用

注意:这些都是.NET示例。我不知道这是否适用于您。如果您包括您正在使用的数据库、版本和客户端技术,可能会有所帮助。

SQL Server的哪个版本和版本??