我正在尝试使用MySQL和ebeans来保存我的任务。当我应用脚本时,我收到此错误:
[PersistenceException: ERROR executing DML bindLog[] error[Field 'id' doesn't have a default value]]
在使用MySQL作为DB之前,它在内存和文件系统中都可以正常使用H2 DB ...
如何解决此错误?
答案 0 :(得分:2)
得到了同样的错误。 将AUTO_INCREMENT添加到您的id字段和进化脚本中的约束。就像这个
create table name (
id bigint not null AUTO_INCREMENT,
...
constraint pk_name primary key (id),
);
现在可行了
编辑: 如果你使用@Id evolutions注释模型中的字段'id'应该自动添加AUTO_INCREMENT和约束
答案 1 :(得分:0)
我刚遇到这个错误,在我的情况下,数据库已经存在,这是我之前设置应用程序的一部分,但是有一半的表为id字段设置了AI,但另一半没有。< / p>
我不确定为什么会这样,这与我创建表格的方式有关。
无论如何,我需要做的就是使用MySQL Workbench来改变没有AI ID的表并添加AI属性。 (我必须删除并重新创建一些外键作为此过程的一部分)。