「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > 文字エンコーディングの問題を発生させずに、JDBC を使用して UTF-8 文字列を MySQL に書き込む方法

文字エンコーディングの問題を発生させずに、JDBC を使用して UTF-8 文字列を MySQL に書き込む方法

2024 年 11 月 8 日に公開
ブラウズ:657

How to Write UTF-8 Strings into MySQL Using JDBC Without Character Encoding Issues?

JDBC インターフェイスを介して UTF-8 文字列を MySQL に正しく書き込む方法

UTF-8 文字エンコーディングを正しく処理するには、MySQL 構成が重要です。文字化けを避けるために、MySQL サーバーとクライアントが適切に構成されていることを確認してください。

正しい構成の確認

MySQL 構成を確認するには、次のコマンドを実行します。

show variables like 'character%';
show variables like 'collation%';

構成の変更

MySQL バージョン 5.1.nn 以降 (5.5.29 を含む) の場合:

[mysqld]
character-set-server = utf8
character-set-filesystem = utf8

MySQL バージョン 5.0.nn 以前の場合:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
default-character-set=utf8
character-set-server=utf8

Java を使用した MySQL への接続

JDBC ドライバーを使用し、文字エンコーディングを明示的に指定して、Java コードで MySQL への接続を確立します。

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDatabase?useUnicode=true&characterEncoding=UTF-8","user","passwd");

追加のヒント

  • データベース クエリ、結果セット、文字列リテラルなど、プログラム全体で UTF-8 エンコーディングを使用してください。
  • Spring JDBC など、文字エンコーディングを自動的に処理する JDBC ラッパー ライブラリ。
  • データベースのテーブルと列が正しい文字セットと照合順序で作成されていることを確認します。
  • 特定のケースでは、明示的な文字セット設定 (query = "setcharacter set utf8";) により競合が発生した可能性があるため、問題が解決された可能性があります。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3