データベーステーブルにインポートしたい.xlsxファイルが何百もあります。csvファイルにファイルの名前があります。そのcsvファイルをループして、これらの数百のファイルのインポートプロセスをより簡単にしたいと思います。
これが私の現在のスクリプトへの挿入であり、ファイルごとに書き出す必要があります。
INSERT INTO TableName Select *, 'FileName' as 'SurveyName'
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=C:\FileName.xlsx;HDR=YES', 'SELECT * FROM [Sheet1$]')
私の問題は、異なるファイル名ごとにこのステートメントを数百回、最終的には数千回繰り返す/変更する必要があることです。
したがって、次のいくつかのステートメントは次のようになります。
INSERT INTO TableName Select *, 'FileName2' as 'SurveyName'
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=C:\FileName2.xlsx;HDR=YES', 'SELECT * FROM [Sheet1$]')
INSERT INTO TableName Select *, 'FileName3' as 'SurveyName'
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=C:\FileName3.xlsx;HDR=YES', 'SELECT * FROM [Sheet1$]')
INSERT INTO TableName Select *, 'FileName4' as 'SurveyName'
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=C:\FileName4.xlsx;HDR=YES', 'SELECT * FROM [Sheet1$]')
INSERT INTO TableName Select *, 'FileName5' as 'SurveyName'
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=C:\FileName5.xlsx;HDR=YES', 'SELECT * FROM [Sheet1$]')
..。
INSERT INTO TableName Select *, 'FileName700' as 'SurveyName'
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;Database=C:\FileName700.xlsx;HDR=YES', 'SELECT * FROM [Sheet1$]')