c#同时插入两个表数据,如果其中一个出问题,则回滚

两个表,一个索引表,一个内容表,我需要往这两个表同时插入数据,索引一定是插入一条数据,而内容表有可能一次插入多条数据,必须保证索引成功后,插入内容出问题,则回滚,如果没有... 两个表,一个索引表,一个内容表,我需要往这两个表同时插入数据,索引一定是插入一条数据,而内容表有可能一次插入多条数据,必须保证索引成功后,插入内容出问题,则回滚,如果没有问题,则结束 展开
 我来答
sxhgga
2014-07-15 · TA获得超过687个赞
知道小有建树答主
回答量:1019
采纳率:74%
帮助的人:636万
展开全部
一 : 使用事务(具体百度)

二 : 简单使用SQL语句
1、插入第一个表后根据返回影响行数判断是否插入成功,成功就插入第二个表,反之则不插入第二个表了。
更多追问追答
追问
我看的都是两个表只插入一条数据,我这里是第二表插入多条数据
追答
还不是一样的...
淡然还纯净灬银杏r
2014-07-15
知道答主
回答量:39
采纳率:0%
帮助的人:15.8万
展开全部
私聊帮你完成
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lichxi1002
2014-07-15 · 超过13用户采纳过TA的回答
知道答主
回答量:36
采纳率:0%
帮助的人:33.8万
展开全部
可以程序端做事务:
假设你有两个方法
bool InsertTbindex(){}
bool InsertTbcontext(){}

using (TransactionScope ts = new TransactionScope())
{
bool result = true;
if (InsertTbindex())
{
for (int i = 0; i < 2; i++)
{
if (InsertTbcontext() == false)
{
result = false;
break;
}
}
if (result)
ts.Complete();
}
}
更多追问追答
追问
假如你在循环的时候网络断开了,数据库也能判断自动回滚吗?
追答
if (result)
ts.Complete();
看这条语句,它没有执行,往数据库写的数据都会回滚
你循环的时候,断网了,ts.Compleate()不会执行,肯定会回滚
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式