我有mysql表为汽车配件,如“空调,停车场辅助,cd播放机,刹车辅助”等,他们都是在INT(11)
。但是我会像1
一样使用它们,如果车有这个,或者NULL
,如果它没有,我应该用其他的东西来改变这个INT(11)
吗?如果可以,请告诉我怎么做?
发布于 2018-06-08 22:08:47
通过进行此更改,您将节省数据库服务器上的一些磁盘空间。您根本不需要更改应用程序逻辑;TINYINT
和INT
都是可以与1或0进行比较的整数。
请注意,MySQL忽略了INT(11)
中的11
和TINYINT(1)
中的1
。INT
值是32位数字,TINYINT
值是8位数字。
除非表中有数百万行,否则进行此更改可能只会为您节省很少的空间。问这个问题花费的时间已经超过了运行这个数据库十多年所节省的时间。
发布于 2018-06-08 21:40:42
您要做的是创建标志来指示是或否的值,这样更适合布尔数据类型,您可以从this post中学习如何在MySQL中使用布尔值。
https://stackoverflow.com/questions/50761887
复制相似问题