Ich habe eine gute Lösung, um Ihre Zeit zu sparen. Ich treffe auch das gleiche Problem, aber ich konnte dieses Problem mit der ersten Antwort nicht lösen.
Dein defualt Charakter ist utf-8. Aber emoji braucht utf8mb4, um es zu unterstützen. Wenn Sie die Berechtigung haben, die Konfigurationsdatei von MySQL zu überarbeiten, können Sie diesen Schritt ausführen.
Führen Sie daher den folgenden Schritt aus, um Ihren Zeichensatz zu aktualisieren (von utf-8 auf utf8mb4).
Schritt 1. Öffnen Sie Ihre my.cnf für mysql und fügen Sie die folgenden Zeilen zu Ihrer my.cnf hinzu.
[mysqld]
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
init_connect='SET NAMES utf8mb4'
[mysql]
default-character-set = utf8mb4
[client]
default-character-set = utf8mb4
Schritt 2. Beenden Sie Ihren MySQL-Dienst und starten Sie den MySQL-Dienst
mysql.server stop
mysql.server start
Fertig! Dann können Sie überprüfen, ob Ihr Charakter in utf8mb4 geändert wurde.
mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+----------------------------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------------------------+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/Cellar/mysql@5.7/5.7.29/share/mysql/charsets/ |
+--------------------------+----------------------------------------------------------+
8 rows in set (0.00 sec)