问一个很低级的问题。。
设计数据库表时,遇到‘类型’、‘状态’字段,我现在是用tinyint来存的,然后用了一个map来存对应的中文描述。我这样对吗?如果类型特别多时,是不是应该用nvarchar来存储?
像我这样的话,我在往前端传json时,应该传对应的中文,还是int类型数据?
如果前端页面需要添加一条数据,传给后端的应该是int还是中文?
或者有什么统一规范吗?
我们单位做数据库时,没有统一的规范,但我看各位大佬们的操作都是在数据库中存放数值数据,在处理数据时再和对应的中文描述对应起来,前端在处理“状态”“类型”时一般用的都是
【<select>
<option value="数据库定义的tinyint类型数据">对应字段的描述</option>
<option value="数据库定义的tinyint类型数据">对应字段的描述</option>
</select>】
这样的方式。
从数据库角度看,varchar虽然可以存储可变长度的字符串,但是当列长小于255时,需要增加一个字节来记录字符串长度,因为相比于tinyint多占用了一个字节。
tinyint可以存储-2^7~2^7-1的数据,即-128~127,使用tinyint unsigned 可以存储0~2^8-1即0~255的数据,对于“状态”“类型”这样的字段,个人认为足够了。
谢谢