Mysql錯誤1366-Incorrect integer value解決方法

字號:


    易賢網網校上線了!
    >>>點擊進入<<<
    網校開發(fā)及擁有的課件范圍涉及公務員、財會類、外語類、外貿類、學歷類、
    職業(yè)資格類、計算機類、建筑工程類、等9大類考試的在線網絡培訓輔導。
    由于這個數據庫服務器存放的數據庫比較多且都是小數據庫,所以最初的時候是運行在windows服務器上的。前一段時間由于機房服務器要做調整,于是我便在一個夜深人靜的夜晚對數據庫進行的遷移及前臺應用程序進行了調整,調整結束后測試應用均可以正常訪問后我便離去了。
    代碼如下:
    insert into doc_main (title,typeid,uptime,intro,ifhot,imgurl1,doctype,fileurl1,shunxu,titleurl,qitype) values('test','13','2011-5-30','test','1','','0','','','','279')
    原因分析過程:
    起初我以為是數據庫文件出現了問題,但是比對新老數據庫文件后,沒有發(fā)現異常,初步判斷應該是數據庫應用程序的問題,于是我便把上面的這句SQL語句復制后直接在mysql服務器上執(zhí)行,執(zhí)行的結果是令人失望的,報了如下錯誤:
    代碼如下:
    [SQL] insert into doc_main (title,typeid,uptime,intro,ifhot,imgurl1,doctype,fileurl1,shunxu,titleurl,qitype) values('test','13','2011-5-30','test','1','','0','','','','279')
    [Err] 1366 - Incorrect integer value: '' for column 'shunxu' at row 1
    查看數據表后發(fā)現shunxu這個字段要求是整數,而默認是null,把它的默認值改為0。重啟mysql服務后,測試OK。