JDBC を介して MySQL に正しい UTF-8 文字列を確実に挿入するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-02 15:27:29
オリジナル
302 人が閲覧しました

How to Ensure Correct UTF-8 String Insertion into MySQL through JDBC?

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

問題:

JDBC インターフェイスを使用して MySQL データベースに UTF-8 文字列を挿入しようとすると、データベース内でデータが正しく表示されません。

背景:

コード提供されているスニペットは、データベースへの接続、テーブルの作成、UTF-8 データを含む行の挿入、挿入されたデータの確認のプロセスを示しています。ただし、出力には、UTF-8 文字が破損していることが示されています。

トラブルシューティング:

1. MySQL 構成エンコーディングの確認:

MySQL 構成ファイル (my.cnf または my.ini) に正しい文字エンコーディング設定が含まれていることを確認します。次のコマンドで設定を確認します:

show variables like 'character%';

show variables like 'collation%';
ログイン後にコピー

2.構成ファイルを変更します (必要な場合):

MySQL バージョンに基づいて、次の行を構成ファイルに追加します:

[mysqld]
character-set-server = utf8
character-set-filesystem = utf8
ログイン後にコピー

OR

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
default-character-set=utf8
character-set-server=utf8
ログイン後にコピー

3. JDBC 接続の構成:

JDBC 接続を確立するときに、次のパラメータを指定します:

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

4.冗長なコードの削除:

提供されたコード スニペットに基づいて、コードから次の行を削除することをお勧めします:

query = "set character set utf8";
stat.execute(query);
ログイン後にコピー

期待される結果:

これらの変更を実装すると、UTF-8 文字列が正しく書き込まれ、MySQL データベースに表示されるはずです。

以上がJDBC を介して MySQL に正しい UTF-8 文字列を確実に挿入するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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