2017-10-07 54 views
-1

當我插入mysql服務器時,我搜索到了一個錯誤,我搜索了google,發現這個錯誤是由sql插入語句中的e引起的,我該如何解決?我無法改變e,因爲這是一個重要的信息。謝謝。解析MySql時發現非法double值

INSERT INTO users (username, password, hwid1) VALUES (admin, admin, 455641444542464542464246463030303330364333496e74656c28522920436f726528544d292069372d343739304b20435055204020342e303047487a47656e75696e65496e74656c34303031476967616279746520546563686e6f6c6f677920436f2e2c204c74642e546f2062652066696c6c6564206279204f2e452e4d2e414c41534b41202d203130373230303946484e5649444941204765466f72636520475458203130363020364742); 
+0

什麼類型是'hwid1'? – Mureinik

+0

@Mureinik是VARCHAR(800)。 – Mihaita

回答

1

MySQL試圖將您的巨型hwid值解釋爲數字。當你不告訴MySQL你有什麼樣的數字時,它使用64位浮點數。僅顯示一次的字母e是常數的有效部分。

在插入時,將所有文本字符串(用於文本類列的所有數據)包裝在單引號中。

INSERT INTO users (username, password, hwid1) VALUES ('admin', 'admin', '45544...367742'); 

文字樣列包括以下這些數據類型:CHARVARCHARTINYTEXTTEXTMEDIUMTEXTLONGTEXT

(小心那些純文本密碼,呃?)

+0

謝謝,它修復了它。稍後我會確保它的安全,現在只是一個測試。祝你今天愉快。 – Mihaita