14

csv ファイルの列を宛先テーブルの特定の列に一括挿入したいと考えています。説明 - 宛先テーブルには、csv ファイルよりも多くの列があります。したがって、csv ファイルの列が BULK INSERT を使用して正しいターゲット列に移動するようにします。

これは可能ですか?はいの場合、どうすればよいですか?

http://blog.sqlauthority.com/2008/02/06/sql-server-import-csv-file-into-sql-server-using-bulk-insert-load-comma-でチュートリアルとコードを見ました。delimited-file-into-sql-server/

およびhttp://www.codeproject.com/Articles/439843/Handling-BULK-Data-insert-from-CSV-to-SQL-Server

BULK INSERT dbo.TableForBulkData
FROM 'C:\BulkDataFile.csv'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)

データが挿入される場所を制御する方法は示していません。

4

1 に答える 1

20

はい、できます。最も簡単な方法は、ターゲット テーブルからビューを作成しSelect、データの移動先の列をソース ファイルに表示される順序でリストすることです。次にBULK INSERT、テーブルに直接ではなく、ビューに移動します。

于 2013-10-30T22:30:10.507 に答える