优良作法是始终在JPA中指定VARCHAR属性长度

时间:2018-07-22 11:47:39

标签: jpa spring-data

在JPA中,我可以将VARCHAR长度指定为:

@Column(length=40)
private String name;

或者,如果我未指定长度,则数据库字段将默认为最大长度。

至少我了解MySQL,数据库引擎将通过调整VARCHAR的大小来最大程度地减少浪费的存储。它是否正确?为什么要在代码中指定长度?此外,我发现如果未指定VARCHAR长度,则应用unique=true约束可能会出现问题,因为这可能会导致在创建架构时出现“超出最大密钥长度”错误

0 个答案:

没有答案