數據庫報錯com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'ua' at row 1


記一次報錯記錄,成長路上的點滴

明明使用瀏覽器或者微信開發工具調試接口沒有問題,但是在真機測試時候就出問題了。(((¬_¬))

500服務器內部錯誤,要死的節奏啊

登陸tomcat服務器

使用命令tail -f /usr/local/tomcat/logs/catalina.out

查看實時日志輸出記錄

Sql: insert into `log_action`(`args`, `post_data`, `response_data`, `ip`, `ua`, `add_time`, `url`) values(?, ?, ?, ?, ?, ?, ?)

2018-11-01 11:16:36
[ERROR]-[Thread: http-nio-8080-exec-62]-[com.jfinal.core.ActionHandler.handle()]: xxx
com.jfinal.plugin.activerecord.ActiveRecordException: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'ua' at row 1

報錯是日志表中的ua太小,數據存不下,但是我設置成了我自以為了最大值了啊varchar(255),

好吧!還是太無知了。

根據網上資料顯示MySQL VARCHAR字段最大長度到底是多少

除了text和blob等大字段外,其余了如int,char,varchar這些字段最大存儲長度不能超過65535字節,

一般我們表使用utf8編碼,按照一個字符最大占用三字節算,最大可存放21845個字符。

所以vachar最少可存儲21845個字符。,定義時候可以varchar(21845)

255不是最大存儲長度啊~

動手改改數據庫字段長度吧,可能windows不會出現這個情況,好像varchar(這個括號里的數字可有可無)

搞定,問題修復


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM