2011-07-22 43 views
1

我需要一个SP可以采取一些24输入参数插入记录到表中。发送多个参数的一种方式是使用XML数据类型。在SQL SP中发送多个输入参数的其他最佳做法?存储过程与多个参数

任何意见是赞赏!

回答

7

如果只插入固定数量的记录,则可以在SP中定义24个参数。通过这种方式,您可以获得一些编译时检查,也可以为每个参数定义非null,null或默认值,以获得更大的灵活性。

我woudn't使用XML数据类型,除非我有可变数量的参数或我必须(在同一时间像插入多个orderlines)模拟参数阵列。

如果你使用SQL Server 2008或更高版本存在的Table-Valued Parameters支持。您可以检查此链接for using table-valued params with .NET SqlCient,太

1

瓦西Bujac的答案是优秀的,我完全同意。但值得一提的是,Sommarskog是一位出色的MVP,他在模仿SQL Server中的数组时可能会有一些非常好的文章,这些文章可能非常适合您的情况。你可以在这里找到它们:http://www.sommarskog.se/arrays-in-sql.html