數(shù)據(jù)庫smallint數(shù)據(jù)類型 使用MySQL的時候bit和tinyint類型用的多嗎?
使用MySQL的時候bit和tinyint類型用的多嗎?位(m):表示位字段類型。其中m是每個值的位數(shù),范圍從1到64,默認值為1。Tinyint:屬于數(shù)字類型,用于存儲小范圍的數(shù)字,具有正負概念?;?/p>
使用MySQL的時候bit和tinyint類型用的多嗎?
位(m):表示位字段類型。其中m是每個值的位數(shù),范圍從1到64,默認值為1。
Tinyint:屬于數(shù)字類型,用于存儲小范圍的數(shù)字,具有正負概念?;臼褂脠鼍笆切⌒妥值浠蛎杜e類型。
眾所周知,在mysql中,適當長度的字符存儲不僅節(jié)省了數(shù)據(jù)空間,而且減少了索引的存儲,更重要的是加速了內(nèi)容的檢索。另外,對于tinyint,建議盡量使用無符號正數(shù),以擴大表示范圍。例如,當我們表示一個人的年齡時,我們可以將其設(shè)計為tinyint,因為tinyint unsigned value的范圍表示0-255。
此外,對于布爾類型字段,還不清楚。在Java中,最好使用無符號tinyint,其中1表示true,0表示false。在一定范圍內(nèi),也建議使用無符號tinyint。雖然在某些業(yè)務(wù)場景中bit可以代替tinyint來進一步節(jié)省空間,但是bit的設(shè)計是相對二進制的,不屬于數(shù)字類型。在我們的業(yè)務(wù)場景中,數(shù)字型一般用于操作、分支判斷等,因此優(yōu)先于非二進制型。
Mysql中為什么不都用int,而要區(qū)分tinyint,smallint等?
Tinyint和smallint占用較少的存儲空間,smallint的存儲大小為
2字節(jié)。Tinyint存儲大小為
1字節(jié)。int的存儲大小是4字節(jié)。