为了账号安全,请及时绑定邮箱和手机立即绑定

.net批量插入数据问题

.net批量插入数据问题

qq_笑_17 2018-12-07 04:25:19
问题描述:List listInStock, Dictionary< TB_B, List> dicStockCard。 简单描述:(1)要新增多条A记录,一条A记录对应多条B记录,一条B记录对应多条C记录。 (2)表TB_A、表TB_B和表TB_C的主键Id都是自增列。 (3)表TB_A新增后生成的一条记录的Id被表TB_B多条记录引用,表TB_B新增后生成的一条记录的Id被表TB_C引用。 若是循环一条条插入,插入完以后立马取出自增Id可以实现功能,但是效率太低。 若做成批量插入,苦思冥想未能实现,求各位支招...
查看完整描述

9 回答

?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

这个是没办法的。只能这样做。 如果你要提升效率,使用ORM,比如EF,你可以构建A实体,构建B并设置B的导航属性指向A,构建C并设置C的导航属性指向B,这样,你只要执行A的INSERT或UPDATE,则ORM会自动的、高效率的执行更新。 此外,要想达到你的需求又不使用ORM,则需要自己生成SQL或以某种格式把数据准备后通过存储过程来实现。 最后一个办法,就是生成多条SQL语句,组合成一个字符串执行。此时务必注意A的ID的获取。
查看完整回答
反对 回复 2018-12-09
?
长风秋雁

TA贡献1757条经验 获得超7个赞

最好使用存储过程, 对这种多表操作的话。 
查看完整回答
反对 回复 2018-12-09
?
慕丝7291255

TA贡献1859条经验 获得超6个赞

这个项目的这个功能是通过批量执行sql实现的,sql中获取需要的自增的Id,谢谢各位
查看完整回答
反对 回复 2018-12-09
  • 9 回答
  • 0 关注
  • 477 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信