我在一个项目中有100多个JPA类。 Hibernate为它们创建一个数据库模式。 字符串领域它使长度为255通过数据库创建属性设置所有字符串字段的最大长度。 Hibernate + Spring Boot
是有什么办法配置通过application.properties休眠文件,例如,使之产生4000长度的字符串字段?
我在一个项目中有100多个JPA类。 Hibernate为它们创建一个数据库模式。 字符串领域它使长度为255通过数据库创建属性设置所有字符串字段的最大长度。 Hibernate + Spring Boot
是有什么办法配置通过application.properties休眠文件,例如,使之产生4000长度的字符串字段?
更改默认字段长度是不可能的。 255
值是由JPA指定的默认值。
我在其他方面找到了解决方案。而不是强迫休眠创造最大长度字符串字段的我已经通过使用255的长度字符串字段休眠默认转换所有创建的String字段的长度到4000
我创建了一个数据库。然后我通过执行以下步骤将转换为所有字符串字段为4000长度。
我使用PostgreSQL,所以这个解决方案就是为了它。对于其他人可能需要一些改变。
选择' ALTER TABLE' || TABLE_SCHEMA || || table_name的||” ALTER COLUMN '|| column_name ||'设置数据类型字符变化(4000);'从 INFORMATION_SCHEMA.COLUMNS其中TABLE_SCHEMA =“公共”和 DATA_TYPE =“字符改变”和CHARACTER_MAXIMUM_LENGTH = 255
创建一个数字,字符串字段的长度改变从255到脚本4000
注意,我可能需要更改table_schema从public,这就是我的情况,你的。
作为resuult与255长度数据库中的所有字符串字段将其长度更改为4000