我想在一次往返中向sql server数据库发送多个参数化更新,插入和删除命令。我查看了sqlbulkcopy,但似乎一次只能使用一个映射/表/语句。我希望有些东西更灵活。我不需要从任何查询中获得任何结果(即:受影响的行数)但我确实希望将失败传播回应用层,以便可以回滚事务。有什么想法吗?
方面问题:我也想知道nHibernate是如何做到这一点的,只是因为它是经过尝试和真实的并且似乎表现良好。我试图查看nhibernate源代码,但它没有立即清楚它是如何进行批处理的。我可以回到源头,但希望有人知道,高级别,如何处理它并可以向我解释。
答案 0 :(得分:1)
将CommandType
设置为Text
,并用分号分隔命令。您最终得到一个巨型命令,您可能需要以编程方式生成其参数名称(以避免冲突)。
答案 1 :(得分:0)
如果我没错,SqlCommandBuilder会帮助你:)。 SqlCommandBuilder