zoukankan      html  css  js  c++  java
  • Field 'id' doesn't have a default value

    首先原因在于没有设置主键自增长。

    mysql的自增长模式是IDENTITY。

    jpa标签:

    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)

    设置主键自增长后,重启项目,要注意数据库里面主键生成模式是否真实被改变了。

    navicat下很方便看到:

    如果没有改变,查看无法改写的原因。

    如果报错如此:

     

    Cannot change column id used in a foreign key constraint

    则表明因为外键的存在而无法改写

    要想更改表结构,首先要把基层的表修改了。

    A表 作为B表的外键,A表不能随便修改。

    B表 有A表的外键,必须先处理好B,然后A才能修改。

    所以建表的一开始就应该注明主键生成策略。

    否则就把外键删除再来吧。

     

  • 相关阅读:
    JavaScript 获取来源地址
    JavaScript 调试&显示变量
    JavaScript Math对象
    JavaScript 封闭函数
    常见泛型委托
    使用BindingSource绑定数据库
    Case Reply
    RSS订阅
    ADO.NET
    泛型的优点
  • 原文地址:https://www.cnblogs.com/rixiang/p/5450307.html
Copyright © 2011-2022 走看看