Datenkürzungsfehler nach Aktualisierung des Datentyps der Spalte
Obwohl der Datentyp einer MySQL-Spalte geändert wurde, um 34-stellige Zeichenfolgen zu unterstützen, trat ein Fehler auf bleibt bestehen, wenn versucht wird, Daten in der Spalte manuell zu aktualisieren. Der Fehler „Daten für Spalte ‚incoming_Cid‘ in Zeile 1 abgeschnitten“ erscheint angesichts der entsprechenden Spaltenänderung rätselhaft.
Ursache und Lösung
Das Problem hat seinen Ursprung in eine falsche Spaltendefinition. Bei der Analyse stellt sich heraus, dass die Spalte „incoming_Cid“ derzeit als CHAR(1) deklariert ist, obwohl sie CHAR(34) sein sollte, um die beabsichtigte Zeichenfolgenlänge zu berücksichtigen.
Um das Problem zu beheben, führen Sie Folgendes aus Befehl:
ALTER TABLE calls CHANGE incoming_Cid incoming_Cid CHAR(34);
Dieser Befehl ändert die Länge der Spalte von 1 auf 34, sodass die 34-stelligen Zeichenfolgen wie vorgesehen gespeichert werden können.
Überprüfung
Nach der Ausführung des Befehls sollte die Spalte „incoming_Cid“ nun als CHAR(34) definiert sein. Geben Sie zur Bestätigung die folgende Abfrage ein:
<code class="SQL">DESC calls;</code>
Die Ausgabe sollte die geänderte Spaltendefinition anzeigen:
<code class="SQL">Field | Type incoming_Cid | CHAR(34)</code>
Jetzt sollte die manuelle Aktualisierung ohne Datenkürzungsfehler erfolgreich sein.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich immer noch die Fehlermeldung „Daten abgeschnitten“, nachdem ich den Datentyp einer MySQL-Spalte aktualisiert habe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!