简单的如何向数据库中两张表插入数据

2021-03-12 06:03:49 字数 989 阅读 8955

1楼:千锋教育

严格意义上讲,没有所谓“同时插入”的手段,只有“要么都插入(分先专后),要么都不插属入”的机制,这个机制就叫做“事务”,是数据库服务器的执行单位,是原子操作。

由上,将两个insert命令包装为一个事务,如下:

declare @ok integer

begin transaction

set @ok = 0

while 1 = 1

begin

insert table1 values( ... )set @ok = @@error

if @ok <> 0

break

insert table2 values (... )set @ok = @@error

break

endif @ok = 0

***mit transaction

else

rollback transaction

通过触发器也能实现需求,其底层原理依然是事务,触发器和引发它执行的语句被自动地包装到一个事务中。不过,强烈不建议使用该方法,用此伎俩会导致业务逻辑分散,而人的思维还是需要一定的连贯性,集中在一起显然有助于表达和理解,当需要改进或者调试错误时徒增繁琐,实在是弊大于利。

2楼:匿名用户

可以啊,建议你用触发器。比如在table1中:

create trigger autoinsertfor insert

asinsert into table2 values(1,2)然后你只要执行:

insert into table1 values(1,2)那么自动启回用触发机制,自然table2中也有了。答

3楼:匿名用户

insert into 表1.username values ('1','2')

insert into 表2.user values ('1','2')insert语句是不能同时操作两个表的,要分为两条

如何在数据库中表示多对多的关系,数据库中如何处理多组多对多的关系?

1楼 匿名用户 首先你的两张主表字段就是各自的字段,对于中间表就是把那两张主表的主键加上两张主表联系的属性加上即可。 2楼 匿名用户 多对多要用两个一对多来表示 3楼 匿名用户 良好的数据库设计都是要符合第三范式或者更加严格一些,所以多对多是一种比较不好的设计方案,会对系统的开发和维护造成很大困难,...

如何判断数据库中是否存在某个数据

1楼 匿名用户 判断方法如下 一 select 字段 列表 from 数据表 例 1 select id g c add tel from haf 表示数据表中所有字段 2 select 单价 数量 单价 数量 as 合计金额 from haf as 设置字段的别名 二 select from wh...

数据库中有四张表:Teacher(教师)表、Student

1楼 匿名用户 1 select s name from student s join stucur c on s id c sid join course cu on cu id c cid where cu name 自然 2 select c name from course c join s...