Background
MySQL 8.0 で utf8mb4のデフォルトの COLLATION
(照合順序) が utf8mb4_general_ci から
utf8mb4_0900_ai_ci に変更されました。 COLLATE
を指定せず、SET NAMES <CHARSET> を実行すると、そのキャラクタセットのデフォルトの collation が利用されます。
つまり、SET NAMES utf8mb4 の結果、5.7 まではクライアントのCOLLATIONとして
utf8mb4_general_ci が使われますが、8.0 からは
utf8mb4_0900_ai_ci が使われます。
-- MySQL 5.7 だと utf8mb4_general_ci mysql> SET NAMES utf8mb4; Query OK, 0 rows affected (0.00 …[さらに読む]