Lil*_*sey 4 c# sql-server asp.net stored-procedures sql-server-2005
我需要在sqlserver中创建多个记录,每个记录在列A中具有相同的值,但在列B中具有唯一值.我在列中具有列B的值.
我正在使用VS2008,aspnet,c#3.5,sqlserver 2005.
我最好过
选项1.
从c#代码中调用sqlserver中的存储过程,然后在tsql中执行存储过程中的所有处理工作?
这将涉及将c#数组中的所有值组合成一个逗号分隔的字符串,并将字符串作为参数传递给tsql,然后循环并将字符串拆分为单个值并为每个值插入记录,所有这些都在存储过程中.
从我所看到的,如果有必要,这将涉及轻松回滚,但在tsql中非常笨拙的字符串处理.
要么
选项2.
在c#中循环并将数据作为sqlparams从c#一次传递到存储过程以插入每条记录.
即,foreach(myarray中的int键)...插入记录
我可以在睡眠中执行此代码,但如果在处理过程中发生了某些事情,我将如何能够回滚?我应该在一个单独的连接中进行循环.open和connection.close?
这样做有没有其他选择?