次の問題があります。私は1400文字のいくつかの行を持つフラットファイルを持っています。このファイルのBULK INSERT
を1つのテーブルnvarchar(1400)
で実行します。バルクUnicode文字を含む単一列のフラットファイルを挿入すると、行が切り捨てられます
文は以下の通りです:
BULK INSERT tempTable
FROM 'path\file'
WITH (FIELDTERMINATOR= '',ROWTERMINATOR = '\n',MAXERRORS = 0)
これは、エラーなしで、正常に動作します。しかし、より詳細な検討の結果、230文字で「切り捨てられた」行があることがわかりました。
(ビッグ)崇高でファイルを開いた後、私は、この行が(括弧は、私は崇高でそれを見る方法です、正方形、ことになっている)[NUL]
のように、これらの特殊文字の外観を中心に切り捨てられました。私はメモ帳でファイルを開くと
9999999999999 99999999999991000000JOHN DOE [NUL][NUL][NUL][NUL][NUL][NUL]ABCDE99999999
お知らせのようなものは、文字がそのように、空のスペースに置き換えられます:、いずれの場合においても
9999999999999 99999999999991000000JOHN DOE ABCDE99999999
一括挿入を行うためにどのような方法がありますこれらの文字を切り捨てるのではなく、それらの文字を見つけた後も行を読み続けますか?
おかげ
ありがとうございますが、私が探していた解決策ではありません。これはETLソリューションの一部なので、ユーザーはSQL Serverと直接対話しません。 – Heathcliff