日期:2014-05-17  浏览次数:20431 次

一条excel数据导入三个关联的表,如果出错的话该怎么取消插入操作
可能表述的不是太好:

一条数据插入三张表,第2个和第3个都与第一个有关系。但是后两张表需要第一张的新插入数据的id值。
也就是插入数据先得插入第一张表 获取id 
db.biao1.add(model);
db.SaveChanges();
id = model.id;
那如果第二张表或第三张表插入出错。怎么取消上面表1的插入的操作。
大概是什么个思路?回调函数?

------解决方案--------------------
用事务,出错了就回滚掉..
------解决方案--------------------
用存储过程来做。
在存储过程中写事务。
如果报错了 那么就把表一种id符合的数据删除掉就好嘞
------解决方案--------------------
TRY CATCH
------解决方案--------------------
事务。

rollback