MySQL 'Abgeschnittener falscher INTEGER-Wert'

8

Ich bekomme einen seltsamen 'abgeschnittenen inkorrekten INTEGER-Wert' Fehler, wenn ich die folgende UPDATE-Abfrage durchführe:

%Vor%

projectNumber ist varchar (10).

Wenn ich es als Straight Select ausführe, erhalte ich keinen Fehler, und ich sehe die Ergebnisse wie erwartet. Irgendwelche Ideen? Im Wesentlichen versuche ich das Feld projectNumber zu aktualisieren, wobei das Ende der Kommentare in importierten Notizen aus 7 numerischen Zeichen besteht (aber projectNumbers sind nicht immer 7 numerisch, weshalb das Feld varchar (10) ist) .

    
Todd Sharp 09.02.2011, 15:27
quelle

3 Antworten

8

Es ist kein Fehler. Es ist eine Warnung, die von CONVERT () kommt, wenn Sie darum bitten, nicht-numerische in Ganzzahl zu konvertieren;

Führen Sie diese Abfragen in der Konsole aus, um Folgendes anzuzeigen:

%Vor%

Wie gesagt, es ist eine Warnung, kein Fehler. Ihre Abfrage sollte das Update korrekt durchführen.

    
Mchl 09.02.2011, 15:34
quelle
4

Eine weitere häufige Ursache für diese Warnung ist Leerraum in der zu konvertierenden Zeichenfolge. Benutze trim() vor convert() um das loszuwerden.

    
Ryan Shirley 23.12.2015 16:05
quelle
0

Wenn Sie einen Texttyp für Spaltendaten verwenden und Sie versucht haben, den Standardwert als 0 festzulegen, legen Sie ihn einfach als NULL fest:

%Vor%     
John 19.06.2017 17:20
quelle

Tags und Links