mysqlint長(zhǎng)度怎么設(shè)置 tinyint與int的區(qū)別?
tinyint與int的區(qū)別?什么?;int(1)和tinyint(1)有什么區(qū)別?對(duì)于這樣的設(shè)計(jì),我贏得了 無(wú)論如何不要寫int(1)。查了一下,在mysql中設(shè)置存儲(chǔ)類型后,存儲(chǔ)是定長(zhǎng)的,也就是說(shuō)
tinyint與int的區(qū)別?
什么?;int(1)和tinyint(1)有什么區(qū)別?
對(duì)于這樣的設(shè)計(jì),我贏得了 無(wú)論如何不要寫int(1)。
查了一下,在mysql中設(shè)置存儲(chǔ)類型后,存儲(chǔ)是定長(zhǎng)的,也就是說(shuō)int(1)和int(4)在硬盤中占用的字節(jié)數(shù)是一樣的。
我們知道,int類型占4個(gè)字節(jié),tinyint占1個(gè)字節(jié)。Int(1)和int(4)的長(zhǎng)度和存儲(chǔ)都是一樣的,不同的是顯示長(zhǎng)度不一樣,但是要設(shè)置一個(gè)參數(shù):如果在列中設(shè)置了zerofill,則顯示用0填充,指定int(4)時(shí)顯示為0002。
Int(1)肯定比tinyint(4)大。
注意,number類型后面括號(hào)中的數(shù)字不是指長(zhǎng)度,而是顯示寬度,與varchar和char后面數(shù)字的含義不同。
也就是說(shuō),不管int后面的數(shù)是多少,它的存儲(chǔ)范圍始終是-2 ^ 31到2 ^ 31-1。
綜上所述,整數(shù)的數(shù)據(jù)類型無(wú)論括號(hào)中有多少個(gè)數(shù),占用的存儲(chǔ)空間都是一樣的。
Tinyint一字節(jié)smallint兩字節(jié)MEDIUMINT三字節(jié)。
顯然,在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí)應(yīng)該選擇int(1)和tinyint(1)。儲(chǔ)物空間越少越好,當(dāng)然一定要夠用。最好用tinyint(1)存儲(chǔ)這樣的一位數(shù)字段。
總結(jié):
1.指定類型后,存儲(chǔ)長(zhǎng)度固定,int(1)和int(4)長(zhǎng)度和存儲(chǔ)相同。在mysql中,int(1)和int(4)的區(qū)別是顯示的長(zhǎng)度,但是要設(shè)置一個(gè)參數(shù):如果為一列設(shè)置了zerofill,則顯示用0填充,比如指定了2 int(3),則顯示為002。
存儲(chǔ)占4個(gè)字節(jié),tinyint存儲(chǔ)占1個(gè)字節(jié),存儲(chǔ)的長(zhǎng)度決定了它們所代表的數(shù)字的不同范圍。int表示的數(shù)字范圍是:從-2 ^ 31(-2,147,483,648)到2 ^ 31–1(2,147,483,647)的整數(shù)數(shù)據(jù)(所有數(shù)字)。Tinyint表示范圍從0到255的數(shù)字。
3.tinyint(1)和tinyint(3)沒(méi)什么區(qū)別,可以存儲(chǔ)在123。如果tinyint(3) zerofill插入值為12,則存儲(chǔ)為012,zerofill會(huì)自動(dòng)在左邊填充零,這是顯示長(zhǎng)度的限制。
上面的總結(jié)有點(diǎn)亂。下面的總結(jié)是簡(jiǎn)化的:
Tinyint(1)和Tinyint(3)沒(méi)有區(qū)別,占用的字節(jié)都是一位,存儲(chǔ)范圍相同。
Tinyint(3) zerofill,當(dāng)插入的數(shù)據(jù)少于3位時(shí),左側(cè)自動(dòng)填充零,這是顯示長(zhǎng)度的限制。
Int(1)和tinyint(1),足夠用的時(shí)候,首選tinyint(1),因?yàn)檎加米止?jié)少,節(jié)省空間。
Tinyint一個(gè)字節(jié)smallint兩個(gè)字節(jié)MEDIUMINT三個(gè)字節(jié)int四個(gè)字節(jié)bigint八個(gè)字節(jié)。
但在varchar(5)中,存儲(chǔ)的字符數(shù)受數(shù)字5的限制,不區(qū)分字符(無(wú)論中文、英文、數(shù)字...).
mysql自增單詞是什么?
Mysql自加字是MySQL設(shè)置的自加字段。
比如MySQL設(shè)置自增字段的相關(guān)語(yǔ)句:
alter table ALBUM change ALBUM _ ID ALBUM _ ID bigint not null自動(dòng)增量
更改表相冊(cè)auto_incr:
mysqlgtcreate表cc(id int auto_increment,name varchar(20),primary k:
mysqlgt alter table cc change id id int主鍵auto_increment .