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

Linda Hamilton
リリース: 2024-11-03 13:59:02
オリジナル
787 人が閲覧しました

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

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

MySQL 構成は、UTF-8 文字エンコーディングを正しく処理するために重要です。文字化けを避けるために、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 への接続を確立します:

<code class="java">con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDatabase?useUnicode=true&amp;characterEncoding=UTF-8","user","passwd");</code>
ログイン後にコピー

追加のヒント

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

以上が文字エンコーディングの問題を発生させずに、JDBC を使用して UTF-8 文字列を MySQL に書き込む方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!