數(shù)據(jù)庫(kù)smallint數(shù)據(jù)類型 數(shù)據(jù)庫(kù)中SMALLINT什么意思?
數(shù)據(jù)庫(kù)中SMALLINT什么意思?Smartint數(shù)據(jù)類型是一種精確的數(shù)字?jǐn)?shù)據(jù)類型,經(jīng)過(guò)算術(shù)運(yùn)算后精度保持不變。它需要兩個(gè)字節(jié)的存儲(chǔ)空間?;蛘吣憧梢哉冶緯?shū)仔細(xì)研究一下主要的區(qū)別是占用字節(jié)的大小。我們知
數(shù)據(jù)庫(kù)中SMALLINT什么意思?
Smartint數(shù)據(jù)類型是一種精確的數(shù)字?jǐn)?shù)據(jù)類型,經(jīng)過(guò)算術(shù)運(yùn)算后精度保持不變。它需要兩個(gè)字節(jié)的存儲(chǔ)空間。
或者你可以找本書(shū)仔細(xì)研究一下
主要的區(qū)別是占用字節(jié)的大小。我們知道,在Java中,int占用4個(gè)字節(jié)。數(shù)據(jù)庫(kù)也是如此。Int是4字節(jié),smallint是2字節(jié),tinyint是1字節(jié)。詳細(xì)信息如下:bigint integer data(所有數(shù)字)從-2^63(-9223372036854775808)到2^63-1(9223372036854775807)。存儲(chǔ)大小為8字節(jié)。整數(shù)從-2^31(-2147483648)到2^31-1(2147483647)。存儲(chǔ)大小為4字節(jié)。int的SQL-92同義詞是integer。Smallint整數(shù)數(shù)據(jù)從-2^15(-32768)到2^15-1(32767)。存儲(chǔ)大小為2字節(jié)。0到255之間的小整數(shù)數(shù)據(jù)。存儲(chǔ)大小為1字節(jié)。如果主鍵被設(shè)置為tinyint,那么一旦增加到128,它將不起作用。結(jié)論:分別為8、4、2、1。PS:Unicode規(guī)范通過(guò)將每個(gè)字符編碼為兩個(gè)字節(jié)來(lái)解決這個(gè)問(wèn)題。轉(zhuǎn)換最常見(jiàn)業(yè)務(wù)語(yǔ)言的單個(gè)規(guī)范有足夠的2字節(jié)模式(65536)。因?yàn)樗蠻nicode系統(tǒng)都一致地使用相同的位模式來(lái)表示所有字符,所以在從一個(gè)系統(tǒng)移動(dòng)到另一個(gè)系統(tǒng)時(shí)不會(huì)出現(xiàn)錯(cuò)誤的字符轉(zhuǎn)換問(wèn)題。通過(guò)在整個(gè)系統(tǒng)中使用Unicode數(shù)據(jù)類型,可以最大限度地減少字符轉(zhuǎn)換的問(wèn)題。Unicode數(shù)據(jù)在sqlserver中以nchar、varchar和ntext數(shù)據(jù)類型存儲(chǔ)。因此,對(duì)于漢字,我們可以使用nvarchar。例如,如果最大漢字?jǐn)?shù)為50,則可以使用nvarchar(50)。當(dāng)然,英文字母表只能是50。
smallint和int的區(qū)別?
從-2^63(-9223372036854775808)到2^63-1(9223372036854775807),存儲(chǔ)大小是8字節(jié)。在支持整數(shù)值的情況下,支持Bigint數(shù)據(jù)類型。但是,在某些特殊情況下使用bigint。當(dāng)整數(shù)值超出int數(shù)據(jù)類型支持的范圍時(shí),可以使用bigint。在SQL server中,int數(shù)據(jù)類型是主要的整數(shù)數(shù)據(jù)類型。在數(shù)據(jù)類型優(yōu)先表中,bigint介于smallmoney和int之間。僅當(dāng)參數(shù)表達(dá)式為bigint數(shù)據(jù)類型時(shí),函數(shù)才返回bigint。SQL server不會(huì)自動(dòng)將其他整數(shù)數(shù)據(jù)類型(tinyint、smallint和int)升級(jí)為bigint。