两张表关联如何实现同时插入数据 sql具体语句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了两张表关联如何实现同时插入数据 sql具体语句相关的知识,希望对你有一定的参考价值。

user表一:
id
name
password
表2:
id
age
sex
Userid(外键)
一对一关系,同时插入数据
三楼的不错,但我要实现的是id自增的的插入哦!

这样的语句可以放在存储过程里
declare @id int
insert into table1 (name,password) values (...)
set @id=@@identity --取到刚插入的id
insert into table2 (age,sex,userid) values (...@id)

其实这样就可以了。如果你担心两个表的数据不同步,比如可能插入了table1后,但是出错了,表1有数据但表2没有,你可以把这2条语句放一个事务里。
参考技术A insert into AA (id1,name,password,id2,age,sex)
select (a.id,a.name,a.password ,b.id,b.age,b.sex from user表1 a ,user表2 b where a.id =b.Userid)
参考技术B 先在表一中插入数据,再在表2中插入数据:
表2的userid的值必须时在表1中存在的ID值
参考技术C 你用一下连接 ,先把两张表连接接起来,再执行插入

sql如何将一个表与另外一张表相关联

参考技术A

1、首先在电脑中打开sql,在外层查询中写上S【elect * From S】查询出学生信息,如下图所示。

2、然后,再以同样的方法找出SC选修表,如下图所示。

3、此时,就可以在这里利用等值连接将S和SC表连接,如下图所示。

4、但是,因为这是不同层级的查询,因此需要Exists谓词将他们连接。

5、运行后,就可以看到这样的结果,如下图所示就完成了。

以上是关于两张表关联如何实现同时插入数据 sql具体语句的主要内容,如果未能解决你的问题,请参考以下文章

MySQL如何同时删除主外键关联的两张表中的数据

sql如何同时向两张表插入数据

sql如何同时向两张表插入数据

sql如何同时向两张表插入数据

Oracle数据库,关于关联两张表更新问题

在SQL语句中,如何把两张表的数据按时间排序查询?