English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

MySQLからコマンドラインでSQLスクリプトをインポートするときに中国語の乱文字が表示される解決策

本文は、MySQLがコマンドラインからSQLスクリプトをインポートする際に中国語の乱文字が発生する解決方法について説明しています。皆さんに共有し、以下のように参考にしてください:

グラフィカルインターフェース管理ツールMySql Query Browserでスクリプト(データベースの作成、テーブルの作成、データの追加を含む)を開き、実行すると、何の問題も発生しません;しかし、mysqlコマンドラインツールを使用してデータベーススクリプトを実行すると、データに中国語が含まれている場合、データは乱文字または&#に保存されます;63;??。。。

解決策1:MySqlインストールディレクトリ下にmy.iniを見つけます、defaultの下に[mysql]を変更します-character-set=latin1をdefaultに変更します-character-set=utf8、保存してからMySqlサービスを再起動するとコマンドラインから成功してインポートできます。欠点は、デプロイメントの場合、ユーザーのコンピュータを設定することができないため、方法1は使用できません。。。

解決策2:データベーススクリプトファイルの先頭に一行set character set utfを追加します8;、データベース名の後にdefault character set utfを追加します8;テーブル)の後にdefault charset =utfを追加します8;、データを追加する前に一行set character set utfを追加します8;それで大丈夫です。

注:我使用的MYSQL versionは5。1。

set character set utf8;
drop database if exists 库名
create database 库名 DEFAULT CHARACTER SET utf8;
use 库名;
/*==============================================================*/
/* Table: 表名         */
/*==============================================================*/
drop table if exists 表名;
create table 表名 (
  PID         int         AUTO_INCREMENT,
  PName        nvarchar(20)     null,
  Remark        nvarchar(50)     null,
  constraint PK_POSITION primary key (PID)
)DEFAULT CHARSET=utf8;
/*=====================================================*/
/*データを追加*/
/*=====================================================*/
set character set utf8;
insert 表名(PName,Remark) values ('1
insert 表名(PName,Remark) values ('2

MySQLに関する詳細な内容に興味を持たれた読者は、以下の特集をチェックしてください:《MySQL インデックス操作の技術集》、《MySQL ログ操作の技術大全》、《MySQL トランザクション操作の技術集》、《MySQL ストアドプロシージャの技術大全》、《MySQL データベースロックに関する技術集》および《MySQL 常用関数の大集合》

本文の内容が皆様のMySQLデータベースの計画に役立つことを願っています。

声明:本文の内容はインターネットから取得しており、著作権者に帰属します。インターネットユーザーが自発的に貢献し、自己でアップロードしました。本サイトは所有権を有しなく、人間による編集は行われていません。著作権に疑問がある場合は、メールで以下のアドレスまでお知らせください:notice#oldtoolbag.com(メールを送信する際、#を@に変更してください)で通報し、関連する証拠を提供してください。確認がついたら、本サイトは即座に侵害する可能性のある内容を削除します。

おすすめ