SQL表中1个字符代码列的最佳数据类型是什么?

mir*_*zus 0 sql database-design

这不是主键,而只是用作现有系统中的标记,用一个字母代码标记这些项目,即'N'表示新的,'R'表示返回,等等.我打算使用varchar(50) )作为数据类型,但想知道varchar(2)是否有任何错误,而不是针对效率.谢谢!

Vin*_*vic 10

最好的数据类型是char(1).

varchar表示可变宽度,也就是说,如果在varchar(50)上只存储3个字符,则不会有47个浪费的字节.但是访问它时会有一个小的性能影响,因为它必须检查每行的字段的实际长度.

如果需求稍后更改,您可以更改表并修改数据类型而不会有太多麻烦.


Joh*_*ohn 5

我认为 char(1) 是理想的选择