恐竜名文字化け問題
__show create table テーブル名;__コマンドで文字コードを確認。
ラテン語になっている。
2.解決策
(1).[mysqld]の編集
my.iniファイルの[mysqld]セクションの最後の「## UTF 8 Settings」を探す
変更前
## UTF 8 Settings
# init-connect=\'SET NAMES utf8\'
# collation_server=utf8_unicode_ci
# character_set_server=utf8
# skip-character-set-client-handshake
# character_sets-dir="C:/xampp/mysql/share/charsets"
↓utf-8に関する下記部分をコメントアウトする。
変更後
## UTF 8 Settings
init-connect='SET NAMES utf8'
collation_server=utf8_unicode_ci
character_set_server=utf8
skip-character-set-client-handshake
character_sets-dir="C:/xampp/mysql/share/charsets"
(2).次に[client][mysqldump][mysql]の各最後に次の行を追加する。
default-character-set=utf8mb4
[client]
# password = your_password
# port = 3306
port = 3308
socket = "C:/xampp/mysql/mysql.sock"
# 下記を追記
default-character-set=utf8mb4
[mysqldump]
quick
max_allowed_packet = 16M
# 下記を追記
default-character-set=utf8mb4
[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
# safe-updates
# 下記を追記
default-character-set=utf8mb4
(3).作成済みテーブルの文字コードの変更
下記コマンドで、文字コードを変更。
ALTER TABLE tbl_dino CONVERT TO CHARACTER SET utf8mb4;
MariaDB [db_dino]> show create table tbl_dino;
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table |
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| tbl_dino | CREATE TABLE `tbl_dino` (
`id` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
`dname0` varchar(100) DEFAULT NULL,
`type0` varchar(50) DEFAULT NULL,
`n_src1` int(11) DEFAULT NULL,
`type1` varchar(50) DEFAULT NULL,
`n_src2` int(11) DEFAULT NULL,
`type2` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 |
+----------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
MariaDB [db_dino]>