我们做的一个项目,把建表的sql语句发给DBA审核,DBA提出了几个意见,其中一条是不建议使用tinyint字段,那个字段type的值可能是1或者2,所以我们用tinyint,以前都是这样用啊。为什么DBA不推荐使用tinyint呢?
2 回答
白猪掌柜的
TA贡献1893条经验 获得超10个赞
各有各的想法,我比较建议用tinyint,它只占用一个字节,使用enum不灵活,比如定义了1是男,2是女,如果我想显示1是男人,2是女人,就不方便了。而在MYSQL上,是不建议用NULL,NULL是占用四个字符,记录多了,这个是不必要的损耗,查询的时候,wherefieldisnull或者fieldisnotnull,这样的查询,效率也不是很高的,把字段设为default'',这样可以wherefield=''orfield!='',或者直接不允许为空NOTNULL。
明月笑刀无情
TA贡献1828条经验 获得超4个赞
半吊子DBA呗,可能不知道从哪本书上看来的东西,我们公司DBA还不允许字段为NULL呢,更奇葩的都有。这和当初C语言编程不允许用goto一样,半吊子“专家”
添加回答
举报
0/150
提交
取消
