记一次报错记录,成长路上的点滴
明明使用浏览器或者微信开发工具调试接口没有问题,但是在真机测试时候就出问题了。(((¬_¬))
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(这个括号里的数字可有可无)
搞定,问题修复