2

我正在尝试使用 MySQL 和 ebeans 来保存我的任务。当我应用脚本时,我收到此错误:

[PersistenceException: ERROR executing DML bindLog[] error[Field 'id' doesn't have a default value]]

在使用 MySQL 作为 DB 之前,它在内存中的 H2 DB 以及文件系统中运行良好......

如何解决此错误?

4

2 回答 2

2

刚刚得到同样的错误。将 AUTO_INCREMENT 添加到您的 id 字段和进化脚本中的约束。像这样

   create table name (
  id                        bigint not null AUTO_INCREMENT,
  ...
  constraint pk_name primary key (id),

);

现在它可以工作了

编辑:如果您在模型中使用@Id 演化注释字段“id”,则应自动添加 AUTO_INCREMENT 和约束

于 2012-06-16T21:52:09.993 回答
0

我刚刚遇到这个错误,在我的情况下,数据库已经存在,作为我早期设置我的应用程序的一部分,但一半的表为 id 字段设置了 AI,但另一半没有。

我不确定为什么会这样,这与我最初创建表格的方式有关。

无论如何,我需要做的就是使用 MySQL Workbench 来更改没有 AI id 的表并添加 AI 属性。(作为此过程的一部分,我还必须删除并重新创建一些外键)。

于 2015-12-08T19:59:22.487 回答