sql >> データベース >  >> RDS >> Mysql

csvファイルのバックスラッシュ

    デフォルトでは、LOADDATAはエスケープ文字として\を使用します。入力を検討してください:

    "abcd", "efgh\", "ijk"
    

    そのシーケンス\" バックスラッシュの後に引用符が続くのではなく、文字通りの非囲み引用符として解釈されます。

    最高 解決策は、CSVファイルのバックスラッシュを適切にエスケープすることです。例:

    "abcd", "efgh\\", "ijk"
    

    それができない場合は、ESCAPED BY ''を追加して、LOADDATAINFILEステートメントでのエスケープを無効にすることができます。 ステートメントに。これにより、\がエスケープ文字として認識されなくなりますが、入力ファイル内の他のすべてのエスケープシーケンスも無効になることに注意してください。 efgh\もインポートされます 、円記号は無視されません。

    efgh\をインポートする場合 が受け入れられない場合は、入力ファイルの形式を修正するか、後でアプリケーションロジックまたは別のSQLクエリを使用して末尾の\を削除する必要があります。

    MySQL LOADDATAINFILE構文 を参照してください。 ファイル形式オプションの詳細については、

    お役に立てば幸いです。




    1. 実行時間の長いOracleDBクエリのシミュレーション

    2. PostgreSQLで文字列と数値を連結する

    3. sqljockyがデータベースに同期的にクエリを実行する

    4. クエリセットの並べ替え:djangoORMクエリの列照合を指定する