Kürzlich wurde auf Unternehmensseite gemeldet, dass einige Benutzerinformationen nicht eingefügt werden konnten. Die Fehlermeldung war ähnlich wie „Falscher Zeichenfolgenwert: „\xF0\xA5…“. Aus dieser Meldung geht hervor, dass der Fehler wahrscheinlich dadurch verursacht wird, dass der Zeichensatz ein bestimmtes, nicht übliches Zeichen nicht unterstützt. Hier ist das in der virtuellen Maschine reproduzierte Szenario: Schritt 1, simulieren Sie die ursprüngliche Zeichensatzumgebung der Tabellenstruktur: Test verwenden; TABELLE ERSTELLEN `t1` ( `id` int(10) NICHT NULL AUTO_INCREMENT, `real_name` varchar(255) ZEICHENSATZ utf8 STANDARD '' KOMMENTAR 'Name', `nick` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT '' COMMENT 'Spitzname', PRIMÄRSCHLÜSSEL (`id`) ) ENGINE=InnoDBAUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='Mitgliedskarte'; Schritt 2, seltene Wörter einfügen (mithilfe der SQLYog-Simulation): 1. Simulieren Sie zunächst die Online-Umgebung und legen Sie den Zeichensatz fest: 2. Fügen Sie seltene Zeichen ein (für seltene Zeichen siehe: http://www.qqxiuzi.cn/zh/hanzi-unicode-bianma.php?zfj=kzb&ks=24E20&js=257E3) Wir versuchen Wang einzufügen (in Word ALT gedrückt halten und 152964 eingeben). Sie können sehen, dass das Einfügen fehlgeschlagen ist. Schritt 3. Ändern Sie den Zeichensatz von real_name: Test verwenden; alter table t1 change real_name real_name varchar(255) CHARACTER SET utf8mb4 DEFAULT '' KOMMENTAR 'Name'; Handelt es sich um eine große Online-Tabelle, kann diese mit pt-osc bearbeitet werden. Der Befehl lautet: pt-online-schema-change -uroot -h localhost --alter=" realen Namen ändern realen Namen varchar(255) ZEICHENSATZ utf8mb4 STANDARD '' KOMMENTAR 'Name' " D=test, t=t1 --no-check-replication-filters --alter-foreign-keys-method=auto --recursion-method=none --quiet --charset=utf8mb4 --dry-run pt-online-schema-change -uroot -h localhost --alter=" realen Namen ändern realen Namen varchar(255) ZEICHENSATZ utf8mb4 STANDARD '' KOMMENTAR 'Name' " D=test, t=t1 --no-check-replication-filters --alter-foreign-keys-method=auto --recursion-method=none --quiet --charset=utf8mb4 --execute Schritt 4, fügen Sie das Experiment erneut ein: 1. Stellen Sie zuerst den Zeichensatz ein: 2. Fügen Sie es erneut ein. Sie können sehen, dass das Einfügen erfolgreich war. Die Befehlszeilenabfrage enthält keinen unleserlichen Code: Das ist alles, Sie können darauf zurückgreifen. Das könnte Sie auch interessieren:
|
<<: Ein vollständiges Beispiel für die Implementierung eines zeitgesteuerten Crawlers mit Nodejs
>>: Bereitstellungsdokument für die Sicherheitseinstellungen des Win2008-Servers (empfohlen)
Problem: Das PHP-Programm auf einem Server kann k...
Code kopieren Der Code lautet wie folgt: <thea...
Inhaltsverzeichnis Abfrage-Cache-Optimierung Über...
Vorwort Angesichts der verrückten Spekulationen u...
1. Nginx-Installationsschritte 1.1 Offizielle Web...
Mobile Mobile Seiten müssen nur mit Chrome und Sa...
MySQL ist das beliebteste relationale Datenbankma...
Vorwort: Der Installationsvorgang wird nicht im D...
Szenario: Die von uns häufig verwendeten Interakt...
Überblick: Das Dateisystemmodul ist ein einfacher...
Beispiel: <html> <Kopf> <style typ...
Wenn wir eine neue CSS-Funktion verwenden möchten...
Inhaltsverzeichnis 1. istPrototyp von() Beispiel ...
System: CentOS 7 RPM-Pakete: mysql-community-clie...
Inhaltsverzeichnis 1. Die Rolle des Index 2. Erst...