2010年1月29日金曜日

SQLServerでCSVファイルをテーブルにインポートする

1. インポート元の CSVファイル と、インポート先のテーブルを用意する

2. サーバーにadministratorでログインして、コマンドプロンプトで以下のコマンドを叩く
bcp (データベース名) format nul -c -x -f (保存するファイル名) -t -U (データベースユーザー名)
例:
>bcp FILEREAD.dbo.T_TEST02 format nul -c -x -f 'D:\Backup\bulk-test02.Xml' -t -U sa

3. パスワードを聞いてくるので、パスワードを打つ
(指定したファイル名でフォーマットファイルが出来る)

4. 以下のようにすると、テーブルと同様に扱える
OPENROWSET(BULK [インポート元のCSVファイル],[上で作ったフォーマットファイル]) AS [名前(なんでもいい)]
例:
INSERT INTO T_TEST02
SELECT a.* FROM OPENROWSET(BULK 'D:\test.csv',FORMATFILE = 'D:\BACKUP\bulk-bulk-test02.Xml') AS a;

0 件のコメント: