0
在数据库中保存VARCHAR(1)是否是一个好主意,其中'0'为false,'1'为true?我不这么认为,但这是我目前工作的公司的惯例。实体看起来像VARCHAR(1)vs BOOLEAN
@Entity
public class MyEntity implements Serializable {
private static final long serialVersionUID = 1L;
@Column(name = "my_field")
private String myField;
// getter-setter
}
使用BOOLEAN会不会更好?我从来没有这样做过,这与hibernate一起工作如何?
@Entity
public class MyEntity implements Serializable {
private static final long serialVersionUID = 1L;
@Column(name = "my_field")
private boolean myField;
// getter-setter
}
这是需要的吗?
如果你想要一些[true/false/file_not_found情境](http://thedailywtf.com/articles/What_Is_Truth_0x3f_),那么是的,使用VARCHAR(1) – 2017-07-24 11:57:20
是个好主意。使用'VARCHAR (1)'作为数据库类型,但使用'String'而不是'boolean'很奇怪,因为使用的数据库映射器应该正确映射它。有些还使用1和0的数字,但这也可以通过Hibernate映射。 – Tom
'boolean' best;可能 - 在第二个地方 - 对于任何NULL场景都是'Boolean',我认为甚至不需要任何理由。 –