如何同时向 2 个表中插入数据 (SQL management studio 2008 )

How to insert data into 2 tables simultaneously (SQL management studio 2008 )

我的数据库中有 2 个数据 table。一个数据库被命名为 Employee_Data。 Employee_Data 有 3 列命名,例如 id 、 name 、 contact 。第二个数据 table 名称是 Employee_Achievements,它还有另外 3 列,例如 Achievement_Name 、 Marks 、 Grade。

我想在一个 SQL 语句中将数据插入到这两个数据 table 中。哪种方法最好?请提供 SQL 查询示例

谢谢

正如巴里所说,创建交易是唯一的方法。 SQL引擎负责事务内数据的耦合。

BEGIN TRANSACTION
INSERT INTO Employee_Data (Name, Contact)
VALUES ('X', 'Y')
DECLARE @id as int = SCOPE_IDENTITY()
INSERT INTO Employee_Achievements (EmployeeId, Achievement_Name , Marks , Grade)
VALUES ( (@id, 'A1', 'M1', 'G1'), (@id, 'A2', 'M2', 'G2') )
COMMIT TRANSACTION