SQL语句怎么同时往两个表中插入不同的记录

比如有一个用户表,一个用户部门表,用户表里面含有用户部门ID,我要插入用户表的时候,同时往用户部门表里面插入一条记录. 这个怎么做?如果更新用户的同时更新用户部门表,这个怎么做

1、首先准备两个数据表,如下图所示,结构需要一样。

2、接着往第一个数据表先插入一些数据。

3、然后我们打开第二个数据表,这时你看到第二个里面是没数据的,我们需要将第一个中的插入进来。

4、接着编写插入语句,注意这次直接在insert后面用select获取数据。

5、然后我们就可以看到第二个数据表中有数据了。

6、最后在进行select查询数据的时候还可以用where进行筛选。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-26
得用触发器,单纯用sql语句做不到
说一下,你用的什么数据库,也得把你的表结构给出来
或者你直接搜索 比如:sqlserver触发器
里边会有些例子的追问

我用SQLSERVER数据库,user表:
id ,name,email ,active ,sex , telephone ,cellphone ,position dept_id

user_dept表:
id,userid,userdept_id,updatetime,level
你能给个例子吗?

追答

能,20分钟左右,你刷新页面看下,我先拿你表里的东西写写

追问

恩恩 太感谢了!

追答

你表字段我没全用,我只给你写了个insert部分的

创建表

create table [user]
(id int,
name varchar(10),
dept_id int)


create table user_dept
(id int  identity(1, 1) primary key,
userid int,
userdept_id int,
updatetime datetime)

创建触发器


create trigger t_user
on [user] after insert
as
begin
insert into user_dept(userid,userdept_id,updatetime) select id,dept_id,GETDATE() from inserted
end

执行插入

insert into [user] values (1,'a',1)

查看结果

select * from user_dept

剩下那部分,建议你自己查资料来做吧

追问

恩恩 太感谢了

本回答被提问者和网友采纳
相似回答