怎样用asp.net语言同一时间插入数据库中的多个表的数据

3个主键表2个外键表,2个外键表只用插哪三个主键表的id... 3个主键表2个外键表,2个外键表只用插哪三个主键表的id 展开
 我来答
派简
2010-07-09 · TA获得超过1052个赞
知道小有建树答主
回答量:282
采纳率:0%
帮助的人:104万
展开全部
不会是同一时间 要有先后顺序的
首先 外键表需要在主键表之后插入 原因很简单 主键表还未生成主键id
该向外键表插什么?

一般情况下的解决办法 编写存储过程A
在三个主键表都插入结束后 将三个主键新生成的id得到
然后再向两个外键表插数据

declare @表1ID int
declare @表2ID int
declare @表3ID int

insert 主键表1 (....) values (....)
select @表1ID = id from 主键表1

insert 主键表2 (....) values (....)
select @表2ID = id from 主键表2

insert 主键表3 (....) values (....)
select @表3ID = id from 主键表3

insert 外键表1 (@表1ID,@表2ID)
insert 外键表2 (@表1ID,@表3ID)

基本思路都写给你了
huagangyin
2010-07-09 · TA获得超过789个赞
知道小有建树答主
回答量:1280
采纳率:33%
帮助的人:553万
展开全部
同一时间?总有个先后吧,可以用存储过程,先插主键表
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xinshi9608
2010-07-09 · TA获得超过2134个赞
知道大有可为答主
回答量:4380
采纳率:25%
帮助的人:1611万
展开全部
楼上说的对,不可能同一时间的,一般用存储过程。另外Asp.net不是语言。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lisliefor
2010-07-09 · TA获得超过145个赞
知道答主
回答量:102
采纳率:0%
帮助的人:100万
展开全部
你的这个需求其实可以转化为:同时插入多个表的数据,同时成功,只要一条失败,所有的插入操作均失败。其实,就是简单的数据库事务的问题。
你只需要在你的插入sql前后,声明它们在一个事务中,即可:
begin tran
insert into tableA...
insert into tableB...
insert into tableC...
commit
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
广州方讯科技
2010-07-12 · TA获得超过346个赞
知道小有建树答主
回答量:316
采纳率:100%
帮助的人:221万
展开全部
要从多个表中检索出信息来,那么这些表之间必然存在某种联系,这样的话可以直接通过SQL语句就能实现的,当然一定要用到连接操作的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式