Mysql数据类型



我对mysql中的数据类型重新分级有疑问。

我在表中有一列名为状态

将具有以下值0=待定,1=活动,2=拒绝,3=暂停4=批准5=审查

我的问题是什么是最好的数据类型。是否

Char(1)
Tinyint(1)
SmallINT(1)
INT(1)

哪一个最好用。

我一直在研究这个问题,但我没有得到任何正确的答案。

请提供建议。

感谢

如果这是唯一允许的5个值,那么使用tinyint,这是一个1字节的数据类型。这将为您提供0-255(无符号)/-128-+127有符号范围。

不要使用字符来存储数字数据。这是一种文本类型。

或者,您可以使用ENUM字段,这将允许您使用"友好"的名称,而不是普通数字。

我不太喜欢在数据库表中包含代码。添加新状态时会发生什么?

您可以创建一个名为status的查找(子)表。插入状态的所有可能值,然后设置与父表的非标识关系。

如果有一个特殊的顺序(不是字母顺序),状态应该按照下拉控件中的顺序进行排序,请添加一个可以排序的列。

相关内容

  • 没有找到相关文章

最新更新