项目是springboot工程,用的是hibernate框架,达梦数据库(版本比较新),其中的参数hibernate.hbm2ddl.auto=update。
因为项目要进行国产化改造,所以数据库通过达梦迁移工具从mysql迁移到了达梦数据库。
这个参数的值:update,参照网上的说法是,项目启动时会自动根据实体类去检查表结构,如果没有修改则不会执行建表、修改等操作,如果有修改则会进行相应操作。
但实际情况是项目启动时不管表结构有没有修改都会进行建表或者创建索引等操作,启动时会报很多错。
Caused by: dm.jdbc.driver.DMException: 第1 行附近出现错误:对象[HISTORY_ITEM]已存在。Caused by: dm.jdbc.driver.DMException: 第1 行附近出现错误:索引[IDX_PACKAGE_ID]已存在。
因为会自动执行创建表、索引等操作,所以基本是报以上的错误。
特此向有遇到过或没遇到过的同学们来问问,感谢。
参数hibernate.hbm2ddl.auto=update,没有正常执行的问题。
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-