0

假设我有两个具有一对多关系的表。商店和产品。

我想在一个查询中将数据插入此表(理想)或使用尽可能少的查询。

直截了当的方法是在 shop 表中插入行,然后获取最后一条记录的 id 并将行插入到带有收到 id 的 products 表中。不幸的是,这对我来说并不好,因为我有高延迟的数据库连接。我也有限制访问数据库,不能创建存储过程。那么解决方案是什么?

4

1 回答 1

1

我不太确定有什么要求。要将数据插入到 2 个表中,您必须使用 2 个插入 SQL。只有一种方法可以确保这 2 个插入工作正确,即使用 begin tran / commit / rollback 和 begin try / begin catch。

begin try
    begin tran
        insert into shop...
        insert into product...

    commit
end try
begin catch
    rollback
end catch

因此,如果发生任何事情,它将回滚,否则,它将提交到表。

于 2013-04-04T18:36:06.503 回答