C# 如何将数据同时插入两个表(SQL management studio 2008)

C# 如何将数据同时插入两个表(SQL management studio 2008),c#,sql,ssms,mysql-management,C#,Sql,Ssms,Mysql Management,我的数据库中有2个数据表。一个数据库被命名为Employee_Data。Employee_数据有3列,分别命名为id、姓名、联系人。第二个数据表名为Employee_Agentures,该表还有3列,如Agenturement_name、Marks、Grade 我想在一条SQL语句中将数据插入这两个数据表中。哪种方式最好?请提供SQL查询示例 谢谢正如巴里所说,创建交易是唯一的方法。SQL引擎负责事务中数据的耦合 BEGIN TRANSACTION INSERT INTO Employee_Da

我的数据库中有2个数据表。一个数据库被命名为Employee_Data。Employee_数据有3列,分别命名为id、姓名、联系人。第二个数据表名为Employee_Agentures,该表还有3列,如Agenturement_name、Marks、Grade

我想在一条SQL语句中将数据插入这两个数据表中。哪种方式最好?请提供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

正如巴里所说,创建交易是唯一的方法。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

据我所知,这在标准SQL中是不可能的,尽管有特定于供应商的方法。在事务或存储过程中使用两条语句很容易。为什么需要在一条语句中使用它?@Nilaksha Perera尝试使用事务。据我所知,在标准SQL中不可能做到这一点,尽管有特定于供应商的方法。在事务或存储过程中使用两条语句很容易。为什么需要在一个语句中使用它?@Nilaksha Perera尝试使用事务。