0

.csvWebサーバーのSQLServerデータベースにファイルをインポートしようとしています。テーブルには約30000行あります。区切り文字は;csvファイルにあります。11202行を挿入しましたが、その後は挿入して言っていません。

'Farms'の近くの構文が正しくありません。'Dale'の近くの構文が正しくありません。'City'の近くの構文が正しくありません。'Center'の近くの構文が正しくありません。'Depot'の近くの構文が正しくありません。

これらの行は次のとおりです。

111203;Greens Farms;12;446;nocity.jpg;NULL
111205;Grosvenor Dale;12;446;nocity.jpg;NULL
111219;Jewett City;12;446;nocity.jpg;NULL
111230;Mansfield Center;12;446;nocity.jpg;NULL
111231;Mansfield Depot;12;446;nocity.jpg;NULL

のような都市名の間のスペース('')についてだと思いましたが、Green Farms空白のある都市が非常に多く、前の行に正常に挿入されました。意味がありません。

この状況について何か考えがありますか?

4

1 に答える 1

2

csv を 2 つのファイルに分割することをお勧めします。もちろん、最初のファイルには正常にインポートされた 11202 行が含まれ、2 番目のファイルには残りの ~18798 行が含まれます。

最初のファイルはエラーなしでインポートされると予想されます。

次に、2 番目のファイルをインポートするときに、10 または 11K のインポート後にそのファイルも爆撃を開始する場合、何らかの境界制限に対処していることに気付く場合があります。

または、小さい方の 2 番目のファイルをインポートすると、問題をより迅速に発見できる場合があります。

それでもまったく同じエラーが発生するが、数が限られている場合は、エラー行を完全に削除して、さらに別のファイルに入れることをお勧めします。

このようにして、最終的にほぼすべてのデータをインポートし、問題をより簡単に特定できる管理可能なサブセットが残ります。

それでもエラーが発生する行が 10 行あり、その理由がわからない場合は、SQL 挿入ステートメントを使用してそれらをデータベースに配置します。

うまくいけば、これは定期的にスケジュールされたプロセスを自動化するという目標の一部ではありません!!

これがあなたにとってどのようになるか見てみたいです。ありがとう。

于 2012-05-30T00:06:56.580 に答える