さて、私はそのように設計されたテーブルERDを持っています...通常の一括挿入用
(出典: iforce.co.nz )
また、各顧客に関する情報を含むタブ区切りの\t
テキスト ファイル (約 100,000 件以上のレコードで構成されています)。
# columnA columnB columnC
data_pointA data_pointB data_pointC
そして、現在意図した仕事をうまくやっているストアドプロシージャ。
CREATE PROCEDURE import_customer_from_txt_para @filelocation varchar(100)
AS BEGIN
TRUNCATE TABLE dbo.[customer_stg]
DECLARE @sql nvarchar(4000) = '
BULK INSERT customer_stg
FROM ''' + @filelocation + '''
WITH
(
FIRSTROW=14,
FIELDTERMINATOR=''\t'',
ROWTERMINATOR=''\n''
)';
print @sql;
exec(@sql);
END
しかし、私の質問は、一括挿入内に customer_idcustomer_table
をcustomer_stg
含めることは可能ですか? customer_stg
そのようなもので?@customer_sk
(外部キーパラメータを一括挿入に適用する方法がわかりません)。
CREATE PROCEDURE import_customer_from_txt_para @filelocation varchar(100), @customer_sk int
AS BEGIN
TRUNCATE TABLE dbo.[customer_stg]
DECLARE @sql nvarchar(4000) = '
BULK INSERT customer_stg
FROM ''' + @filelocation + '''
WITH
(
FIRSTROW=14,
FIELDTERMINATOR=''\t'',
ROWTERMINATOR=''\n''
)';
print @sql;
exec(@sql);
END
できれば、一括挿入するたびに、2 つのテーブル間でデータを関連付けることができるようにしたいと考えています。
(出典: iforce.co.nz )