第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

MySQL 的數(shù)據(jù)類型(1)

本小節(jié)主要講解 MySQL 數(shù)據(jù)類型,MySQL 支持多種數(shù)據(jù)類型,學(xué)習(xí)好數(shù)據(jù)類型,才能更好的學(xué)習(xí) MySQL 表的設(shè)計(jì),讓表的設(shè)計(jì)更加合理。

1.整數(shù)類型

類型 大小 SIGNED(有符號(hào)) UNSIGNED(無(wú)符號(hào)) 說(shuō)明
tinyint 1字節(jié) -128~127 0~255 小整型
smallint 2字節(jié) -32768~32767 0~65535 小整型
mediumint 3字節(jié) -8388608~8388607 0~16777215 中整型
int 4字節(jié) -2147483648~2147483647 0~49294967295 整型
bigint 8字節(jié) -9223372036854775808
~
9223372036854775807
0~18446744073709551615 大整型

1.1 tinyint

tinyint 為小整數(shù)類型,存儲(chǔ)空間為1個(gè)字節(jié)(8位),有符號(hào)范圍-128 ~ 127,無(wú)符號(hào)范圍 0 ~ 255,此類型通常在數(shù)據(jù)庫(kù)中表示類型的字段,如某一字段 type 表示學(xué)科,其中 “type=1” 表示語(yǔ)文,“type=2” 表示數(shù)學(xué), “type=3” 表示英語(yǔ),此時(shí) type 字段即可使用 tinyint 這種存儲(chǔ)空間比較小的類型。

1.2 smallint

smallint 為小整數(shù)類型,存儲(chǔ)空間2個(gè)字節(jié)(16位),有符號(hào)范圍 -32768 ~ 32767,無(wú)符號(hào)范圍 0 ~ 65535,當(dāng)遇到最大值不超過(guò) 65535 的整數(shù)類型字段時(shí),可使用無(wú)符號(hào) smallint 類型。

1.3 mediumint

mediumint 為中整數(shù)類型,存儲(chǔ)空間3個(gè)字節(jié)(24位),有符號(hào)范圍 -8388608 ~ 8388607,符號(hào)范圍 0 ~ 16777215,當(dāng)遇到最大值不超過(guò) 16777215 的整數(shù)類型字段時(shí),可使用無(wú)符號(hào) mediumint 類型。

1.4 int

int 為整數(shù)類型,存儲(chǔ)空間 4 個(gè)字節(jié) ( 32位 ),有符號(hào)范圍 -2147483648 ~ 2147483647,無(wú)符號(hào)范圍 0 ~ 49294967295,當(dāng)遇到最大值不超過(guò) 49294967295 的整數(shù)類型字段時(shí),可使用無(wú)符號(hào) int 類型,通常自增主鍵 id 使用 int 類型。

1.5 bigint

bigint 為大整數(shù)類型,存儲(chǔ)空間8個(gè)字節(jié)(64位),有符號(hào)范圍 -9223372036854775808 ~ 9223372036854775807,無(wú)符號(hào)范圍 0 ~ 18446744073709551615,當(dāng)遇到最大值不超過(guò) 18446744073709551615 的整數(shù)類型字段時(shí),可使用無(wú)符號(hào) bigint 類型,通常自增主鍵 id 使用 int 無(wú)法滿足時(shí),可以使用 bigint 類型。

2.浮點(diǎn)類型

類型 大小 SIGNED(有符號(hào)) UNSIGNED(無(wú)符號(hào)) 說(shuō)明
float 4字節(jié) -3.402823466E+38 ~ -1.175494351E-38,
0,
1.175494351E-38 ~ 3.402823466351E+38
0,1.175494351E-38 ~ 3.402 823 466 E+38 單精度浮點(diǎn)型
double 8字節(jié) -1.7976931348623157E+308 ~ -2.2250738585072014E-308,
0,
2.2250738585072014E-308 ~ 1.7976931348623157E+308
0,
2.2250738585072014E-308 ~ 1.797693134862315 7E+308
雙精度浮點(diǎn)型
decimal 每4個(gè)字節(jié)存儲(chǔ)9個(gè)數(shù)字,小數(shù)點(diǎn)占1字節(jié) DECIMAL(M,D),取決于M和D,M是整數(shù)部分,D是小數(shù)部分 DECIMAL(M,D),取決于M和D,M是整數(shù)部分,D是小數(shù)部分 精確類型,常用來(lái)表示金額

2.1 float

float 為單精度浮點(diǎn)類型,存儲(chǔ)空間 4 個(gè)字節(jié),支使用標(biāo)準(zhǔn)的浮點(diǎn)運(yùn)算進(jìn)行近似計(jì)算,若想知道浮點(diǎn)運(yùn)算是怎么計(jì)算的,則需要研究操作系統(tǒng)的浮點(diǎn)數(shù)方式,通常對(duì)小數(shù)精度要求不那么高的字段可使用 float 類型。

2.2 double

double 為雙精度浮點(diǎn)類型,存儲(chǔ)空間 8個(gè)字節(jié),相比f(wàn)loat 有更高精度和更大的范圍,通常對(duì)小數(shù)精度要求不那么高,但比 float 要求更高的字段可使用 double 類型。

2.3 decimal

decimal 類型用于存儲(chǔ)精確的小數(shù),若使用 float 類型來(lái)取代一些需要精確小數(shù)點(diǎn)類型的字段時(shí),大的數(shù)據(jù)量會(huì)導(dǎo)致數(shù)據(jù)錯(cuò)誤,比如金額,若使用 float 類型,可能會(huì)丟失精度,此時(shí)對(duì)于金額這樣對(duì)精度要求很高的字段來(lái)說(shuō),可以選擇使用 decimal 類型。

3.小結(jié)

本小節(jié)主要介紹了 MySQL 數(shù)值類型大小和取值范圍,實(shí)際應(yīng)用中要根據(jù)字段在業(yè)務(wù)中實(shí)際表示的含義來(lái)選擇數(shù)值字段數(shù)據(jù)類型,例如年齡字段 age 選擇無(wú)符號(hào) TINYINT 類型,金額數(shù)值對(duì)精度要求比較高,所以選擇 DECIMAL 類型比較合適,時(shí)間戳類型使用 INT,對(duì)于數(shù)據(jù)量比較大的表的自增主鍵 id 可選擇 BIGINT,具體字段類型的選擇,還需要根據(jù)實(shí)際情況來(lái)綜合分析,合理選擇即可,字段的默認(rèn)值盡量避免 NULL。