MyBatis错误输出:

org.apache.ibatis.exceptions.PersistenceException: 
### Error updating database.  Cause: java.sql.SQLException: Field 'id' doesn't have a default value
### The error may exist in com/smbms/dao/provider/ProviderMapper.xml
### The error may involve com.smbms.dao.provider.ProviderMapper.addProvider-Inline
### The error occurred while setting parameters
### SQL: INSERT INTO `smbms_provider`( `proCode`,`proName`,`proDesc`,`proContact`         ,`proPhone`,`proAddress`,`proFax`,`createdBy`,`creationDate`)         VALUES(?,?,?,?,?         ,?,?,?,?);
### Cause: java.sql.SQLException: Field 'id' doesn't have a default value

首先我们对输出的错误信息进行分析,可以很清晰的发现,其中有一句提示为Field 'id' doesn't have a default value,它的意思是字段“id”没有默认值,这个问题的解决方案是,在SQL语句中加上该字段,或者如果他可以是一个自动增长列就把它设置为自动增长列。我这里直接将它设置为自动增长列:
设置供应商id为自动增长列这时我们运行程序,可以发现程序运行成功了:
运行成功问题成功的被我们解决啦!

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐