失敗のシナリオ MySQL データベースに絵文字表現を挿入するために JDBC を呼び出すと、例外 失敗の原因 MySQL の utf8 エンコーディングの文字は最大 3 バイトですが、絵文字表現は 4 バイトであるため、utf8 では絵文字表現の保存はサポートされていません。ただし、utf8 のスーパーセットである utf8mb4 は、文字あたり最大 4 バイトを持つことができるため、絵文字表現の保存をサポートできます。 詳しい紹介を見てみましょう。 解決 1. データベース、テーブル、列の文字セットを変更する データベースの文字セットを変更する ALTER DATABASE データベース名 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci; テーブル文字セットを変更する ALTER TABLE テーブル名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 列の文字セットを変更する ALTER TABLE テーブル名 CHANGE フィールド名 フィールド名 フィールドの元のデータ型 CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 上記の 3 つのオプションは、実際の状況に応じて変更できます。 2. MySQL設定変数を表示する SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%'; character_set_server 変数の値が utf8mb4 と等しいかどうかを確認します。等しくない場合は、手順 3 を参照してください。 3. MySQL設定ファイルを変更する ここで、mysql は CentOS にインストールされ、構成ファイル名は my.cnf であり、パスはインストールしたディレクトリに基づいています。 vim /etc/my.cnf /etc/mysql/my.cnf マイ.cnf character_set_server を見つけて、その値を utf8mb4 に設定し、保存して終了します。再度挿入してエラーがあるかどうかを確認します。エラーがある場合は、MySQL サービスを再起動する必要があります。 サービスmysqldを再起動 要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
<<: Linux 3.X/4.x/5.x でパゴダ パネルのパスワードを忘れた場合の解決方法
>>: Vue は better-scroll を使用して水平スクロール方法の例を実現します
1. maxPostSize を設定する理由は何ですか? tomcat コンテナには送信データのサイ...
複数行のテキストがオーバーフローすると省略記号が表示されますこの記事では 2 つの方法を推奨します。...
背景最近、Docker 初心者の友人から、毎回プロジェクト構成ファイルにハードコーディングしてサービ...
背景多くのウェブサイトのデザインは、一般的にコンテンツ+フッターの2つの部分で構成されています。コン...
目次1. ページレイアウト2. 画像のアップロードと表示3. キャンバスを初期化する4. テンプレー...
通常のウェブサイトのソースコードを開くと、ソースコードは<!DOCTYPE htmlで始まる必...
1. チェックステータスモジュールがインストールされているかどうかを確認します。 [root@loc...
仮想マシン内のUbuntu 18.04がネットワークに接続できない問題の解決策は次のとおりですVMw...
目次導入説明書実際の経験長所と短所総括する導入mysqlpump は mysqldump の派生です...
目次序文基礎を築くプロトタイプコンストラクタのプロパティ__プロト__プロトタイプチェーン改善する要...
最近、「フットボール ナビゲーション」Web サイトに取り組んでいるときに、上部の固定ナビゲーション...
HTML ファイルとは何ですか? HTML は Hyper Text Markup Language...
例: mysqldump –all-databases を使用すると、すべてのライブラリがエクスポー...
これまでの 3 つの記事では、論理バックアップと物理バックアップを含む、MySQL データベースの一...
フロートはWebページのレイアウトでよく使用されますが、フローティングブロックレベル要素は標準のドキ...