我正在研究ASP.NET Web应用程序。在那里,我有一个编辑信息页面,有大约40个文本框。我需要更新数据库中的数据,因此我需要将所有40个字段中的值传递到数据库中。
我将40个参数传递给存储过程以更新数据库中的数据。我需要一些其他方法来传递这些参数。请建议如何将多个参数传递给存储过程。
是否有其他方法可以传递数据,或者只能在参数列表中写入所有内容吗?
此致 的Vivek
答案 0 :(得分:1)
40个参数不应该是showstopper,但是如果你真的想要将更少的参数传递给存储过程,你可以考虑将40个值封装到存储过程的passing an XML argument(s) - 例如......
<booksdetail>
<isbn_13>800007890</isbn_13>
<isbn_10>07890B</isbn_10>
<image_url>http://www.whatever.com/Books/large/00/800007890.jpg</image_url>
<title>Some Title</title>
<description>The incredible story of....</description>
-- ...
</booksdetail>
...传递给@bookDetail xml
而不是传递给其中的值:
@isbn_13 varchar(13),
@isbn_10 varchar(10),
@image_url varchar(100),
@title varchar(100),
@description varchar(250),
-- ...
您仍然需要考虑存储过程中的40个值,但如果您的首选项是更小的存储过程签名,则此方法将实现同样的效果。