mysql: wie kürzt die Länge eines Feldes
Alter table merry_parents change mobile mobile char(10).
Wenn ich das oben bin ich immer Fehler:
#1265 - Daten abgeschnitten für Spalte 'mobile' in Zeile 2
Wie kann ich abschneiden, meine Handy-Feld char(10)? Derzeit ist es char(12).
InformationsquelleAutor vaanipala | 2012-03-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Der Fehler ist Ihnen zu sagen, es gibt Daten, die 12 Zeichen in Zeile 2 (und wahrscheinlich noch andere), so beendet Sie die alter-Befehl, um Datenverlust zu vermeiden.
Aktualisieren Sie Ihre Tabelle mit
SUBSTRING()
verkürzen die Spalte. Es ist unklar, warum Sie dies tun wollen, so werden Sie Daten verlieren, aber das wird kürzen Sie die Daten auf 10 Zeichen lang:Führen Sie die alter-Befehl:
Siehe Meine Tabelle ein Feld mit dem Geschlecht char(1) , ich es machen will, Geschlecht enum('m','f','o') was soll ich tun ? Zeigt seine abgeschnitten Fehler beim ändern direkt von char zu enum
InformationsquelleAutor Bojangles
, Wenn Sie ok mit dem abschneiden der Daten auf 10 Zeichen - Sie können aktualisieren Sie die Spalte zuerst, dann ändern Sie es
Führen Sie die alter-Anweisung.
InformationsquelleAutor Jody
Wenn Sie bereit sind, nur die Daten abgeschnitten werden, können Sie es in einem Schritt mithilfe der option IGNORIEREN, auf der ALTER:
InformationsquelleAutor Dwight
Haben Sie Daten, die mehr Zeichen als die Länge der Spalte, die Sie zu verändern versucht, es in.
Oder Sie haben ein null-Wert in das angegebene Feld.
http://bugs.mysql.com/bug.php?id=14742
InformationsquelleAutor Oh Chin Boon