2016-06-27 14 views
3

Ich habe bereits gesucht und versucht, Fehler zu beheben, aber ich konnte das nicht tun. Was ist das Problem in meinem Code? Ich füge unten Code und Fehler ein. Wie ich es verstehe, über die Art der Daten. Wenn ich irgendwelche Grammatikfehler mache, tut mir leid.Falscher Integer-Wert SQL-Fehler

$sql = <<<SQL 
    INSERT INTO karakter (KullanıcıAdı,uid,Isim,Cinsiyet,Irk,Boy,Kilo,Gün,Ay,Yıl,Güç,Bünye,Dayanıklılık,Çeviklik,Karizma,Zeka,İrade,Odaklanma,Ustalık,Ziraat,İşçilik,Aşçılık,Botanik,Balıkçılık,Dericilik,Marangozluk,Hekimlik,VahşiYaşam,DuvarUstalığı,Camcılık,Demircilik,Avcılık,Şarapçılık,Çekilme,Kalkan,Hançer,Kılıç,Balta,Gürz,Mızrak,Yay,Arbalet) 
    VALUES ("$user","$uid","$isim","$cinsiyet","$irk","$boy","$kilo","$gun","$ay","$yil","$Güç","$Bünye","$Dayanıklılık","$Çeviklik","$Karizma","$Zeka","$İrade","$Odaklanma","$Ustalık",'$Ziraat',"$İşçilik","$Aşçılık","$Botanik","$Balıkçılık","$Dericilik","$Marangozluk","$Hekimlik","$VahşiYaşam","$DuvarUstalığı","$Camcılık","$Demircilik","$Avcılık","$Şarapçılık","$Çekilme","$Kalkan","$Hançer","$Kılıç","$Balta","$Gürz","$Mızrak","$Yay","$Arbalet") 
    ON DUPLICATE KEY UPDATE 
    KullanıcıAdı=VALUES(KullanıcıAdı), 
    uid=VALUES(uid), 
    Isim=VALUES(Isim), 
    Cinsiyet=VALUES(Cinsiyet), 
    Irk=VALUES(Irk), 
    Boy=VALUES(Boy), 
    Kilo=VALUES(Kilo), 
    Gün=VALUES(Gün), 
    Ay=VALUES(Ay), 
    Yıl=VALUES(Yıl), 
    Güç=VALUES(Güç), 
    Bünye=VALUES(Bünye), 
    Dayanıklılık=VALUES(Dayanıklılık), 
    Çeviklik=VALUES(Çeviklik), 
    Karizma=VALUES(Karizma), 
    Zeka=VALUES(Zeka), 
    İrade=VALUES(İrade), 
    Odaklanma=VALUES(Odaklanma), 
    Ustalık=VALUES(Ustalık), 
    Ziraat=VALUES(Ziraat), 
    İşçilik=VALUES(İşçilik), 
    Aşçılık=VALUES(Aşçılık), 
    Botanik=VALUES(Botanik) 
SQL; 

Der Fehler ist:

Falsche ganzzahliger Wert: '' für Spalte 'Ziraat' in Zeile 1

+0

leicht zu verstehen 'Sie können keinen leeren Wert an eine Integer-Spalte übergeben. –

+0

Also gibt es eine leere Variable vor diesem Code. habe ich recht? – Belial

+0

bedeutet, dass entweder 0 oder irgendein anderer ganzzahliger Wert angegeben wird. '''' ist String nicht Ganzzahl –

Antwort

2

Basierend auf Fehler Incorrect integer value: '' for column 'Ziraat' at row 1: -

1.Either Sie haben nicht festgelegt die entsprechende Variable mit jedem Wert, der in dieser Spalte eingefügt wird.

2.Oder Sie senden '' (leere Zeichenfolge) an diese Spalte, und es wird abgelehnt, weil die Spalte integer type ist.

Lösung: - Setzen Sie die entsprechende Variable dieser Spalte mit einem korrekten ganzzahligen Wert (0 oder> 0).

Hinweis: - Überprüfen und korrigieren Sie sich selbst. Danke.

2

Überprüfen Sie bitte die datatype des Tabellenfeldes 'Ziraat' .Der integer Feld akzeptiert nicht ' ' als integer. ' ' ist string. Sie können 0 oder >0 any value anstelle von ' ' angeben.

+0

Danke :) Ich habe das Problem gefunden. – Belial

+0

sind Sie richtig also +10. Ich habe einige Änderungen in Ihrer Antwort vorgenommen. :) :) –