1

まだSQL開発は初めてですが、学習は非常に高速です。

このシナリオはエンティティ フレームワークで解決できますが、それは選択肢ではありません。

2 つのテーブルにデータを挿入する必要があります。以下に状況を説明します。

メイン テーブルには ID キーがあり、キーに関連付けられたレコードに関連するデータが挿入されるときに、サブ テーブルにもそのキーが必要です。

ソース情報は、他のいくつかのテーブルから取得されています。メイン テーブルまたはサブ テーブルの構造を変更できません。

カーソルの使用を避けようとしていますが、代替手段がありません。

output insert.main_id を #temp1 に使用してみました - これは機能しますが、Sub_ID をその一時テーブルに入れる方法も見つかりません。Sub_ID はソースからのものです。

彼らは、データをメインテーブルに挿入し、ソースのハッシュをメインテーブルと照合することで、対応するサブテーブルに Main_ID を挿入することができます。

TABLE MAIN    
Main_ID    PK, bigint,not null - identity
FirstName    varchar(15) not null
LastName    varchar(15) not null
Misc1    varchar(15)null
Misc2    varchar(15) null
Misc3    varchar(15) null

TABLE SUB    
Main_ID    PK,FK,bigint, not null
Sub_ID    int null
Misc4    varchar(15)
Misc5    varchar(15)
Misc6    varchar(15)

「output insert.main_id」とともに Sub_ID を一時テーブルにキャプチャする方法はありますか?

現在、ソースからのハッシュとメイン テーブルに挿入されたレコードを照合して、サブ テーブルに挿入される Main_ID を取得しています。

Main_ID が Main テーブルで生成されたときに Sub_ID を一時テーブルに取り込むことができれば、プロセスははるかに高速になります。カーソルの使用を避けたかったのですが、今のところそれが最善の選択肢だと思います。

4

0 に答える 0