在一个查询中插入两个表
答
您既可以运行两个查询为一体的声明
insert into table1 (...) values (...); insert into table2 (...) values (...)
或者写一个触发器,完成第二个插入。
+0
是的,这是真的: insert into table1(...)values(...);插入到table2(...)值(...) 但它应该在一个事务中。因为如果第一次插入失败,第二次插入不应该执行 – 2012-02-15 10:31:31
答
我通常会编写一个存储过程来获取所有要写出的值,然后调用一系列包含在事务中的INSERT INTO
语句。
如果您提供更多信息,例如表格结构和样本数据,我们可以为您提供更多帮助。
为什么你不能使用两个INSERT语句?除非使用'OUTPUT'子句或触发器,否则'INSERT'语句只能影响单个表。 – 2012-02-14 19:40:30
@H_wardak谢谢,这对我很有帮助。 – Freelancer 2013-04-09 09:34:16