Table 'XXX.hibernate_sequence' doesn't exist
2018-08-02 23:14
756 查看
开发项目种遇到一个问题 Table 'text.hibernate_sequence' doesn't exist ,因为项目使用 springboot 集成 jpa ,这里分享下解决方法。
只需要根据项目使用数据库更改主键生成策略即可
TABLE:使用一个特定的数据库表格来保存主键。
SEQUENCE:根据底层数据库的序列来生成主键,条件是数据库支持序列。
IDENTITY:主键由数据库自动生成(主要是自动增长型)
AUTO:主键由程序控制。
在指定主键时,如果不指定主键生成策略,默认为 AUTO。
注解 @Id
相当于
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
identity:
使用 SQL Server 和 MySQL 的自增字段,这个方法不能放到 Oracle 中,Oracle 不支持自增字段,要设定 sequence(MySQL 和 SQL Server 中很常用)。
Oracle就要采用 sequence 了。
同时,也可采用 uuid,native 等其它策略。(相关用法这里不细说了,自行上网查询)
水平有限,若有问题请留言交流!
互相学习,共同进步:) 转载请注明出处谢谢!
只需要根据项目使用数据库更改主键生成策略即可
@GeneratedValue(strategy = GenerationType.IDENTITY) // 主键自增长
补充:
JPA 提供的四种标准用法为 TABLE,SEQUENCE,IDENTITY,AUTOTABLE:使用一个特定的数据库表格来保存主键。
SEQUENCE:根据底层数据库的序列来生成主键,条件是数据库支持序列。
IDENTITY:主键由数据库自动生成(主要是自动增长型)
AUTO:主键由程序控制。
在指定主键时,如果不指定主键生成策略,默认为 AUTO。
注解 @Id
@Id private Integer id;
相当于
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Id @GeneratedValue(strategy = GenerationType.AUTO) //主键生成策略交给持久化引擎 private Integer id;
identity:
使用 SQL Server 和 MySQL 的自增字段,这个方法不能放到 Oracle 中,Oracle 不支持自增字段,要设定 sequence(MySQL 和 SQL Server 中很常用)。
Oracle就要采用 sequence 了。
同时,也可采用 uuid,native 等其它策略。(相关用法这里不细说了,自行上网查询)
水平有限,若有问题请留言交流!
互相学习,共同进步:) 转载请注明出处谢谢!
相关文章推荐
- Hibernate5.2 Table 'xxx.hibernate_sequence' doesn't exist
- 【SpringBoot错误】【关于:Table 'XXX.hibernate_sequence' doesn't exist】
- org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Table 'XXX' doesn't exist
- 10020---hibernate---Table 'XXX.XXX' doesn't exist
- 关于hibernate5.1.0中Table 'spring.hibernate_sequence' doesn't exist的解决办法
- MySQL 拷贝数据库表方式备份,还原后提示 table xxx '' doesn`t exist
- Table 'uc.uc_pms' doesn't exist,uc_pms不存在解决
- MySQL 恢复数据库表时提示 table “xxx” doesn`t exist
- Hibernate与Mysql 5.5创建表出错--table doesn't exist
- 遇到这个问题SQL execution # 1146.Response from database:Table 'xxx' doesn't exist
- MySql - 导入数据时 Table XXX doesn't exist 的解决
- mysql问题#1146 - Table 'xxx.xxxxx' doesn't exist
- hibernate连接过程报错:Table 'performance_schema.session_variables' doesn't exist
- com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'hibernate.id_gen' doesn't exist
- 修正mysqlcc在MySQL 5.0上常报的 Table 'xxx' doesn't exist 错误
- Linux环境下MySQL报Table 'xxx' doesn't exist错误解决方法
- Table 't21.tb_user' doesn't exist...nested exception is org.hibernate.exception.SQLGrammarException:
- linux下解决mysql table xxx doesn't exist
- SQL execution # 1146.Response from database:Table 'xxx' doesn't exist
- 误删数据库报错mysql Table 'performance_schema.session_variables' doesn't exist