回答編集履歴

6

補足

2019/03/24 09:04

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -1,6 +1,6 @@
1
1
  フォーマットファイルの指定の内、区切り文字の指定が合っていないようです。
2
2
  `|`区切りということと、普通、行の区切りはcrlfですので、以下のような指定だと思います。
3
- ※\0ってlfを表現しようとした?
3
+ ※\0ってlfを表現しようとした?←NULL ターミネータ (表示されないターミネータ)ですね。
4
4
 
5
5
  |項目順|データ型|prefix長|データ長|区切文字|格納先項目順|格納先項目名|項目文字コード|
6
6
  |:--|:--|:--|:--|:--|:--|:--|:--|
@@ -10,7 +10,7 @@
10
10
  2 |SQLNCHAR |0 |200 |"|" |2 |StoreName |Japanese_CI_AS
11
11
  3 |SQLINT |0 |4 |"|" |3 |SeqNo |""
12
12
  4 |SQLCHAR |0 |1 |"|" |4 |DlvStatCd |Japanese_CI_AS
13
- 5 |SQLNCHAR |0 |400 |"\r" |5 |DlvNGRsn |Japanese_CI_AS
13
+ 5 |SQLNCHAR |0 |400 |"\n" |5 |DlvNGRsn |Japanese_CI_AS
14
14
 
15
15
  追記
16
16
  --

5

追記。

2019/03/24 09:04

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -15,7 +15,8 @@
15
15
  追記
16
16
  --
17
17
  CSVがutf-8でしたね。
18
- utf-8の場合、フォーマットファイルは指定できないようです。
18
+ utf-8の場合、コードページに関しては、フォーマットファイルは指定できないようです。
19
+ ※指定する場所が無いので。それ以外は問題なさそうです。
19
20
  [UTF-8 形式のテキストファイルを BULK INSERT で一括取り込みする( SQL Server )](http://nomu.skr.jp/2016/09/utf-8-bulk-insert/)
20
21
  [【SQL】BULK INSERTのデータインポート(UTF-8)](http://moriroom.my.coocan.jp/site1/?p=2637)
21
22
  上記を参考に以下で取り込めました。

4

修正

2019/03/24 08:44

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -17,7 +17,7 @@
17
17
  CSVがutf-8でしたね。
18
18
  utf-8の場合、フォーマットファイルは指定できないようです。
19
19
  [UTF-8 形式のテキストファイルを BULK INSERT で一括取り込みする( SQL Server )](http://nomu.skr.jp/2016/09/utf-8-bulk-insert/)
20
-
20
+ [【SQL】BULK INSERTのデータインポート(UTF-8)](http://moriroom.my.coocan.jp/site1/?p=2637)
21
21
  上記を参考に以下で取り込めました。
22
22
  ```SQL
23
23
  BULK INSERT BulkInsertTest FROM 'C:\temp\STORE_20190323.txt'
@@ -25,5 +25,6 @@
25
25
  DATAFILETYPE='char'
26
26
  , CODEPAGE = '65001'
27
27
  , FIELDTERMINATOR = '|'
28
+ , ROWTERMINATOR='0x0A' -- 行ターミネータ LF (0x0A)
28
29
  )
29
30
  ```

3

追記

2019/03/24 08:39

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -12,6 +12,8 @@
12
12
  4 |SQLCHAR |0 |1 |"|" |4 |DlvStatCd |Japanese_CI_AS
13
13
  5 |SQLNCHAR |0 |400 |"\r" |5 |DlvNGRsn |Japanese_CI_AS
14
14
 
15
+ 追記
16
+ --
15
17
  CSVがutf-8でしたね。
16
18
  utf-8の場合、フォーマットファイルは指定できないようです。
17
19
  [UTF-8 形式のテキストファイルを BULK INSERT で一括取り込みする( SQL Server )](http://nomu.skr.jp/2016/09/utf-8-bulk-insert/)

2

追記

2019/03/24 07:57

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -10,4 +10,18 @@
10
10
  2 |SQLNCHAR |0 |200 |"|" |2 |StoreName |Japanese_CI_AS
11
11
  3 |SQLINT |0 |4 |"|" |3 |SeqNo |""
12
12
  4 |SQLCHAR |0 |1 |"|" |4 |DlvStatCd |Japanese_CI_AS
13
- 5 |SQLNCHAR |0 |400 |"\r" |5 |DlvNGRsn |Japanese_CI_AS
13
+ 5 |SQLNCHAR |0 |400 |"\r" |5 |DlvNGRsn |Japanese_CI_AS
14
+
15
+ CSVがutf-8でしたね。
16
+ utf-8の場合、フォーマットファイルは指定できないようです。
17
+ [UTF-8 形式のテキストファイルを BULK INSERT で一括取り込みする( SQL Server )](http://nomu.skr.jp/2016/09/utf-8-bulk-insert/)
18
+
19
+ 上記を参考に以下で取り込めました。
20
+ ```SQL
21
+ BULK INSERT BulkInsertTest FROM 'C:\temp\STORE_20190323.txt'
22
+ WITH (
23
+ DATAFILETYPE='char'
24
+ , CODEPAGE = '65001'
25
+ , FIELDTERMINATOR = '|'
26
+ )
27
+ ```

1

修正

2019/03/24 07:56

投稿

sazi
sazi

スコア25430

answer CHANGED
@@ -10,4 +10,4 @@
10
10
  2 |SQLNCHAR |0 |200 |"|" |2 |StoreName |Japanese_CI_AS
11
11
  3 |SQLINT |0 |4 |"|" |3 |SeqNo |""
12
12
  4 |SQLCHAR |0 |1 |"|" |4 |DlvStatCd |Japanese_CI_AS
13
- 5 |SQLNCHAR |0 |400 |"\r\n" |5 |DlvNGRsn |Japanese_CI_AS
13
+ 5 |SQLNCHAR |0 |400 |"\r" |5 |DlvNGRsn |Japanese_CI_AS