如何在同一時間將多行插入到兩個不同的表中。選擇行並將行插入到多個表中,sql server
我有3個表
create table temp_source
(
GroupID varchar(10) primary key,
ExMsg varchar(20)
);
create table temp_exceptions
(
ExID int identity primary key,
ExMsg varchar(20)
);
create table temp_sjobs
(
GroupID varchar(10) primary key,
ExID int
);
temp_sjobs.ExID
有temp_exceptions.ExID
現在我想一切從temp_source
表中的行插入temp_sjobs
和temp_exceptions
表在同一時間一個外鍵關係。
我能做到這一點的唯一方法是通過在temp_source
表的每一行循環,將該行插入temp_exceptions
表,拿到@ExID = scope_identity()
並插入一行到 temp_sjobs
表。
這看起來很慢,因爲循環查詢需要很多時間。
有沒有一種更好的方法來同時插入到多個表中。
爲什麼不先插入異常表然後再輸入soure表? –
那就是我在做什麼,但是我必須循環遍歷每一行。 –
這不是一個單一的工作嗎?如果有幫助,您必須刪除批量插入的外鍵並再次添加。 – Kaf