当前位置: 首页 > 工具软件 > Scid > 使用案例 >

ERROR: Field 'scId' doesn't have a default value

苍宝
2023-12-01

问题标签:
hibernate、@ManyToMany 、主键

抛出异常:
ERROR: Field ‘scId’ doesn’t have a default value

问题描述:
有Student,Subject,Score 三个实体类,表示学生、科目、分数,
其中Student与Subject采用ManyToMany关系,生成表score,
而Score实体类又分别与student和subject成ManyToMany关系,且有自己的主键scId。具体代码参考下文。
在往数据库中添加score时,抛出异常ERROR: Field 'scId' doesn't have a default value

问题原因
代码的原意是score表以自己的scId为主键,然而hibernate在生成score表时会以studentId和subjectId为主键 ,导致scId不能作为主键自动生成,因而抛出ERROR: Field 'scId' doesn't have a default value 异常。

解决办法:
手动建 score表,再执行程序。
建表SQL:

DROP
 类似资料:

相关阅读

相关文章

相关问答