一括挿入コマンドを使用してインポートするタブ区切りファイルがあります。次のようなフォーマットファイルがあります。
8.0
9
1 SQLCHAR 0 50 "\t" 1 Field1 "SQL_Latin1_General_CP1_CI_AS"
2 SQLCHAR 0 50 "\t" 2 Field2 "SQL_Latin1_General_CP1_CI_AS"
3 SQLCHAR 0 50 "\t" 3 Field3 "SQL_Latin1_General_CP1_CI_AS"
4 SQLCHAR 0 50 "\t" 4 Field4 "SQL_Latin1_General_CP1_CI_AS"
5 SQLCHAR 0 50 "\t" 5 Field5 "SQL_Latin1_General_CP1_CI_AS"
6 SQLCHAR 0 50 "\t" 6 Field6 "SQL_Latin1_General_CP1_CI_AS"
7 SQLCHAR 0 50 "\t" 7 Field7 "SQL_Latin1_General_CP1_CI_AS"
8 SQLCHAR 0 50 "\t" 8 Field8 "SQL_Latin1_General_CP1_CI_AS"
9 SQLCHAR 0 0 "\r\n" 9 Field9 "SQL_Latin1_General_CP1_CI_AS"
ANSI ファイルでは問題なく動作しますが、UCS-2 リトル エンディアン エンコーディングとしてファイルを受信しています。
これを機能させるための私の試みは、フォーマットファイルに次の修正を使用することです。これによりエラーが停止しますが、すべての列が空の適切な数の行が得られます。可能であれば、ファイルの変換を避けたいと思います。
8.0
9
1 SQLCHAR 0 50 "\t\0" 1 Field1 "SQL_Latin1_General_CP1_CI_AS"
2 SQLCHAR 0 50 "\t\0" 2 Field2 "SQL_Latin1_General_CP1_CI_AS"
3 SQLCHAR 0 50 "\t\0" 3 Field3 "SQL_Latin1_General_CP1_CI_AS"
4 SQLCHAR 0 50 "\t\0" 4 Field4 "SQL_Latin1_General_CP1_CI_AS"
5 SQLCHAR 0 50 "\t\0" 5 Field5 "SQL_Latin1_General_CP1_CI_AS"
6 SQLCHAR 0 50 "\t\0" 6 Field6 "SQL_Latin1_General_CP1_CI_AS"
7 SQLCHAR 0 50 "\t\0" 7 Field7 "SQL_Latin1_General_CP1_CI_AS"
8 SQLCHAR 0 50 "\t\0" 8 Field8 "SQL_Latin1_General_CP1_CI_AS"
9 SQLCHAR 0 0 "\r\0\n\0" 9 Field9 "SQL_Latin1_General_CP1_CI_AS"