MySQLが2つのテーブルを関連付ける際のエンコードの問題と解決策

MySQLが2つのテーブルを関連付ける際のエンコードの問題と解決策

Mysqlが2つのテーブルを関連付けると、次のエラーメッセージが生成されます:照合順序の不正な組み合わせ

1. まず、ツールを使用してデータベースと2つのテーブルのエンコード方法を変更します。

2. この手順は非常に重要であり、フィールドのエンコード方法を変更する必要があります。

ALTER TABLE `テーブル名` CHANGE `dev_chancode` `フィールド` VARCHAR(32) CHARACTER SET gbk NOT NULL;

要約: テーブルを作成するときは、統一されたエンコード方法に注意する必要があります。そうしないと、後で処理するのが非常に面倒になります。

MySQL テーブルのエンコーディング変換問題を解決する方法

  1. エクスポートするデータ テーブルのテーブル構造をエクスポートします (Phpmyadmin、mysqldump などを使用できます。非常に簡単なので詳しく説明しません)。次に、エクスポートされた create table ステートメントの CHARSET=latin1 を CHARSET=utf8 に変更し、ターゲット ライブラリ newdbname で create table ステートメントを実行してテーブル構造を構築してから、データのエクスポートとインポートを開始します。注文:
  2. ./mysqldump -d DB_Dig > /usr/local/tmp/tables.sql
  3. コマンドライン: mysql コマンドライン、mysql -hlocalhost -uroot -p*** dbname を入力します。
  4. SQL を実行します。select * from tbname into outfile '/usr/local/tbname.sql';
  5. tbname.sql を UTF-8 形式に変換します。UltraEditor を使用することをお勧めします。エディターの [変換] -> [ASCII から UTF-8 (Unicode 編集)] を直接使用するか、ファイルを UTF-8 (BOM なし) 形式で保存することができます。
  6. mysql コマンドラインで set character_set_database=utf8 ステートメントを実行します。注: 次の手順で sql ファイルを読み取るときに、mysql が sql ファイルの内容を utf8 形式で解釈するように、mysql 環境変数を設定します。
  7. mysql コマンドラインで、load data infile 'tbname.sql' into table newdbname.tbname というステートメントを実行します。

以上が今回ご紹介した知識ポイントの全てです。123WORDPRESS.COMをご活用いただき、誠にありがとうございます。

以下もご興味があるかもしれません:
  • MySQL で日付を比較する際に発生するエンコードの問題の解決策
  • Mysql データベースのエンコーディングの問題 (データベース、テーブル、フィールドのエンコーディングを UTF8 に変更)
  • Mysql5 の文字セットエンコーディング問題を解決する

<<:  CentOS7にJDK8をrpmモードでインストールする

>>:  Reactの状態管理の3つのルールのまとめ

推薦する

deepin 2014 システムに MySQL データベースをインストールする方法

Deepin 2014 のダウンロードとインストールDeepin 2014 のダウンロードとインスト...

新しい CSS display:box プロパティの詳細な説明

1. ディスプレイボックス;要素にこのプロパティを設定すると、display:inline-bloc...

Linux システムで crontab を使用して MySQL データベースを定期的にバックアップする方法

システムの crontab を使用して定期的にバックアップ ファイルを実行し、バックアップ結果を日付...

MySQLでBLOBデータを処理する方法

具体的なコードは次のとおりです。 パッケージ epoint.mppdb_01.h3c; java.i...

dl、dt、dd はいつ使用するのが適切ですか?

dl:定義一覧定義リストdt:定義タイトルタイトルを定義するdd:定義説明定義の説明dt は情報のタ...

vue3+threejs を使用して iView 公式サイトのビッグウェーブ特殊効果の例を模倣する

目次序文1. レンダリング2. コード3. 背景画像素材要約する序文Threejs は、Web ベー...

JavaScript イベント キャプチャ バブリングとキャプチャの詳細

目次1. イベントの流れ1. コンセプト2. DOMイベントフロー2. イベントの委任1. イベント...

Linux/Mac MySQL パスワードを忘れた場合の対処方法

Linux/Mac の MySQL パスワードを忘れた場合はどうすればいいですか?心配しないでくださ...

Dockerfileを使用してDockerイメージを構築する手順

Dockerfile は、命令を含むテキスト ファイルです。各命令はレイヤーを構築するため、各命令の...

vue構成ファイルはルーティングとメニューインスタンスコードを自動的に生成します

目次前面に書かれたルータ.jsonルート生成メニュー生成効果要約する前面に書かれたルートを繰り返し記...

HTMLテキストの一般的なイベントとメソッドの詳細な説明

イベントの説明onactivate: オブジェクトがアクティブ要素として設定されたときに発生します。...

MySQL 増分バックアップとブレークポイントリカバリスクリプトの例

導入増分バックアップとは、完全バックアップまたは最後の増分バックアップの後、後続の各バックアップでは...

vue_drf は SMS 認証コードを実装します

目次1. 需要1. 需要2. SDKパラメータ設定1. ディレクトリ構造3. コードの実装1. バッ...

JavaScript配列をツリー構造に変換する方法

1. 需要バックエンドは、フロントエンドがツリー構造(重複データなし)に変換するためのデータを提供し...

tomcat8の最新のLinuxインストールプロセス

ダウンロード参考:ダウンロードするコアパッケージを選択してくださいダウンロード後、ファイルをサーバー...