Dieser Artikel beschreibt die Support- und Problemlösungsmethoden des MySQL Java-Servers für Emoji. Teilen Sie uns die Einzelheiten zu Ihrer Information mit: Problembeschreibung Die von der untersten Ebene erfassten Microblog-Daten werden in MySQL gespeichert. Einige Daten können nicht gespeichert werden. Nach der Überprüfung von Tomcat lauten die Kernfehlerinformationen wie folgt:
Ursachenanalyse
【Notiz】
Problemumgehung Spezielle Emoticons filtern content = content.replaceAll("[\\x{10000}-\\x{10FFFF}]", ""); // Einfach und grob, nicht menschlich Aktualisieren des Datenbankzeichensatzes 1. Die von utf8mb4 unterstützte MySQL-Version ist 5.5.3+. Wenn MySQL niedriger als diese Version ist, aktualisieren Sie es bitte zuerst. 2. Ändern Sie den Zeichensatz der Datenbank, der Tabelle und der Spalte 3. Ändern Sie die MySQL-Konfigurationsdatei my.cnf (my.ini für Windows). my.cnf befindet sich im Allgemeinen im Verzeichnis etc/mysql/. Nachdem Sie sie gefunden haben, fügen Sie den folgenden Inhalt in den folgenden drei Teilen hinzu: [Client] Standardzeichensatz = utf8mb4 [mysql] Standardzeichensatz = utf8mb4 [mysqld] Zeichensatz-Client-Handshake = FALSE Zeichensatzserver = utf8mb4 Sortierserver = utf8mb4_unicode_ci init_connect = "Namen festlegen utf8mb4" 4. Starten Sie MySQL neu und überprüfen Sie den Zeichensatz Geben Sie in die MySQL-Befehlszeile ein: VARIABLEN ANZEIGEN, WO Variablenname WIE 'Zeichensatz_%' ODER Variablenname WIE 'Sortier%'; Zeichensatz vor dem Neustart Zeichensatz nach Neustart 【Notiz】
Nachdem Sie die obigen 4 Schritte abgeschlossen haben, verwenden Sie den MySQL-Client Navicat, um der Tabelle manuell Emoji-Ausdrücke ⛄ hinzuzufügen. Wenn sie erfolgreich gespeichert werden können, bedeutet dies, dass die Datenbank erfolgreich aktualisiert wurde. Die genauen Unterschiede zwischen diesen Zeichensatzkonfigurationen finden Sie unter Ausführliche MySQL-Zeichensatzeinstellungen. 5. Überprüfen Sie die serverseitige DB-Konfigurationsdatei // Die beim Konfigurieren von Spring verwendeten Links lauten wie folgt: url="jdbc:mysql://localhost:3306/gzhou?allowMultiQueries=true&useUnicode=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&autoReconnect=true&autoReconnectForPools=true&failOverReadOnly=false&maxReconnects=10" // Wenn characterEncoding=utf8mb4, wird beim Einfügen von Daten eine Fehlermeldung angezeigt. Ursache: java.sql.SQLException: Nicht unterstützte Zeichenkodierung „utf8mb4“ //CharacterEncoding oder CharacterEncoding=utf8 entfernen Emoji Im Android-System verfügen die Eingabemethoden Sogou und Baidu über integrierte Emoji-Ausdrücke. 【Notiz】 Wenn die Emoji-Symbole zwischen den Systemen inkompatibel sind, werden nur Quadrate angezeigt. Leser, die an weiteren MySQL-bezogenen Inhalten interessiert sind, können sich die folgenden Themen ansehen: „Zusammenfassung der allgemeinen MySQL-Funktionen“, „Zusammenfassung der Kenntnisse zu MySQL-Protokollvorgängen“, „Zusammenfassung der Kenntnisse zu MySQL-Transaktionsvorgängen“, „Zusammenfassung der Kenntnisse zu gespeicherten MySQL-Prozeduren“ und „Zusammenfassung der Kenntnisse zu MySQL-Datenbanksperren“. Ich hoffe, dass dieser Artikel für jedermann beim Entwurf einer MySQL-Datenbank hilfreich ist. Das könnte Sie auch interessieren:
|
<<: Methode der Toolbibliothek zur Generierung von Vue-Komponentendokumenten
Beim Ändern des Standarddatums-/Uhrzeitwerts über...
Inhaltsverzeichnis Mehrere MySQL-Instanzen Übersi...
Vorwort Als wir das Pferd geschrieben haben, wuss...
Inhaltsverzeichnis Vorwort 1. Props, $emit Einweg...
Vorwort Ich war kürzlich damit beschäftigt, ein K...
Als ich heute Nginx verwendete, trat ein 500-Fehl...
Vorwort <br />Im vorherigen Artikel „Mein CS...
Inhaltsverzeichnis Vorwort 1. Art von 2. Instanz ...
Guten Morgen allerseits, ich habe meinen Artikel ...
Inhaltsverzeichnis 1. So erstellen Sie ein Array ...
Mehrweg-Suchbaum Höhe eines vollständigen Binärba...
Wenn wir einen Buchstaben auf der Tastatur eingeb...
Bei der Web-Frontend-Entwicklung ist es unvermeidl...
Inhaltsverzeichnis Der erste Der Zweite Native Js...
JavaScript-Skripte können überall in HTML eingebe...