MySql常见报错总结

一:在struts的项目中向mysql数据库表中插入记录时浏览器报以下错误:

javax.servlet.ServletException: java.lang.RuntimeException: Data truncated for column 'uid' at row 1

root cause

java.lang.RuntimeException: Data truncated for column 'uid' at row 1
 
控制台报的错误如下:

java.sql.SQLException: Data truncated for column 'uid' at row 1
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4096)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4028)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2490)

这个错误的大概意思是说插入数据时“uid”列的数据被截断,就是插入失败,然后我把插入到“uid”列的数据打出来一看居然是String类型的,而表中定义的是int类型,所以插入不进去。

那么判断一个数据对象是什么类型可以这样做,例如:

String name = "abc-123-def-456";

System.out.println(name .getClass());

控制台输出如下:

class java.lang.String

所以把数据表的列类型更改成varchar可以了。


二:struts的项目中向mysql数据库表中插入记录时浏览器报以下错误:

java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check...

sql写的有问题,注意修改。比如少个空格,少个 'xxx'  ......


三:struts的项目中向mysql数据库表中插入记录时浏览器报以下错误:

MySql不能插入中文字段的错误

解决办法如下:

https://mp.csdn.net/postedit/80003305

你可能感兴趣的:(MySQL)