問題タブ [mysql-loadfile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
718 参照

mysql - Cloud SQL: Python クライアント API は、CSV ファイルのインポート時にデフォルトで utf8mb3 文字セットになります

Google Cloud のインポート API を使用して、Google Cloud Storage の CSV ファイルを Cloud SQL MySQL 5.7 データベースに読み込みます。

https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/instances/import

インポート API は、「utf8」文字セットを想定する MySQL データベースへの LOAD DATA INFILE コマンドを生成します。ただし、私の CSV ファイルのデータは、「utf8」のスーパーセットである「utf8mb4」エンコーディングを使用しています。これにより、一部の文字列を 'utf8' にエンコードできない場合、ロード プロセスが失敗します。

関連記事: "'message': "Import CSV error: Error 1300: Invalid utf8 character string:"

インポート API (またはその他の文字セット) を使用して 'utf8mb4' CHARACTER SET を追加する方法はありますか?

'csvImportOptions' ディクショナリに 'character set': 'utf8mb4' を追加して実験してみましたが、インポート API はその dict で 'table' および 'columns' キーのみを想定しているようです。

MySQL クライアントから LOAD DATA INFILE コマンドを直接実行すると、問題なく CSV をインポートできることに注意してください。

追加データ ポイント Google の API が生成している LOAD DATA INFILE クエリがデフォルトで 'utf8' 文字セットになっていることは明らかです。

API と同じエラー メッセージで失敗する

作品:

ここのドキュメントは正しくありません: https://cloud.google.com/sql/docs/mysql/import-export/importing

0 投票する
1 に答える
53 参照

mysql - MySQL 文字セットと照合

MySQL 5.7 を使用していますが、ベトナム語を正しく表示するように設定する方法がわかりません。

設定しました

その後、「LOAD DATA LOCAL INFILE」を使ってベトナム人が書いたデータをデータベースに読み込みました。

しかし、ベトナム語の文字表示でエラーになることがよくあります。

詳細なコードとファイルについては、次のリンクとして私の GitHub から確認してください。

https://github.com/fivermori/mysql

これを解決する方法を教えてください。ありがとう。