插入数据库表中一条记录同时也插入另一个表中的SQL语句怎么写

在插入数据库一个表(如,A表)中字段(如,a字段)的值的同时也插如另一个表(如,B表)中字段(如,b字段)的值,请问怎么写SQL语句

如果需要一起写入就在程序中直接分别写插入A和插入B表的数据,如果想让数据库自动在插入A表时触发执行插入B表数据,那就要在数据库中定义“触发器”来实现了。追问

那两个表的 字段不同呢!1

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-17
可以同时触发写入两张报表内,也可以设定UPDATE自动到另一张表内
第2个回答  2013-04-19
用触发器写
第3个回答  2013-04-17
有点没明白什么意思,是在往a表添加一条数据的同时往b表添加一条同样的数据?追问

就是向A表插入数据的时候 也把数据插入到B表中 字段名 有的不同!

追答

那就用触发器呗,字段名不同只要类型一样就ok呀!用触发器往哪个字段添加什么样的数据那是你控制的呀!
create trigger [dbo].[tri_1]
on [dbo].[tabA] --将要进行更改的表名
for insert --给表插入一条数据的时候触发
as
declare @biaoming nvarchar(250) --定义一个变量
select @biaoming = biaoming from inserted --把查询出的指定字段的值赋值给变量
INSERT INTO tabB (biaoming )VALUES @biaoming --插入语句

这个要在tabA的触发器里写

追问

create or replace trigger tri_ab
before insert on a
for each row
is
begin
when ... then
insert into b values(:new.id,:new.name,:new.money,:new.pid);
end tri_ab;
这样 怎么 让 A表中的 字段 和 B表中的字段 对应啊!

追答

你先看我给你写的,不明白再问我吧

本回答被提问者采纳
相似回答