Myeclipse+hibernate+mysql :Field 'id' doesn't have a default value
myeclipse下建好工程,添加hibernate capabality. 数据库是mysql。对数据库中一个表反向工程,生成了所需要的类文件和hbm.xml, DAO类。primary key选的是native
表很简单,create table employee(id int primary key, name varchar(20), password varchar(20))
如下测试
Employee account = new Employee();
account.setPassword(password);
account.setUsername(username);
EmployeeDAO dao = new EmployeeDAO();
tr = dao.getSession().beginTransaction();
dao.save(account);
tr.commit();
dao.getSession().close();
老提示Field 'id ' doesn 't have a default value 而失败。
请问这是什么原因。麻烦大家帮我解决下
------解决方案--------------------关注
------解决方案--------------------你的id字段没有定义默认值,而你插入的时候也没给值,当然不行
把你的表删掉,重新创建
create table employee(id int auto_incremnet primary key, name varchar(20), password varchar(20))
------解决方案--------------------因為你的id的問題。
把id設為自動增加。
或讓id可以輸入NULL
------解决方案--------------------一般是你给的id字段类型,无法自增。你是不是用的varchar做的主键