読者です 読者をやめる 読者になる 読者になる

CSVファイルをBULK INSERTで取り込む

SQLServer

必要になるたびにぐぐってSQL-Server2000 BULK INSERTでCSVファイルをインポート: 使えないプログラマーを見てるので備忘録的メモ。φ(_ _)m

USE MyDB

BULK INSERT dbo.○○○マスタ FROM '\\SOMESERVER\SomeShare\Some\Directory\○○○マスタ.txt'
WITH (
   DATAFILETYPE = 'char',
   FIELDTERMINATOR = ',',
   ROWTERMINATOR = '\n'
)

取込元のファイルは、DBエンジンが動いてるマシンから参照出来ないとファイルが見つからないと怒られます。ローカルファイルシステムである必要はありませんが、BULK INSERTを発行するアカウントに取込元のCSVがあるネットワークシェアへのリードアクセス権がある必要があります。"sa"はまともなセキュリティを実現してる環境ではダメでしょう。現実的にはActive Directory環境&Windows認証である必要があるでしょうね。