int(10)和int(11)的區(qū)別影钉,你是否掉坑了

int(M) M指示最大顯示寬度患民。最大有效顯示寬度是255御蒲。顯示寬度與存儲大小或類型包含的值的范圍無關(guān)

  • 首先說一下mysql的數(shù)值類型衣赶,mysql支持所有標準SQL數(shù)值數(shù)據(jù)類型。這些類型包括嚴格數(shù)值數(shù)據(jù)類型(INTEGER厚满、SMALLINT府瞄、DECIMAL和NUMERIC),以及近似數(shù)值數(shù)據(jù)類型(FLOAT碘箍、REAL和DOUBLE PRECISION)遵馆。關(guān)鍵字INT是INTEGER的同義詞鲸郊,關(guān)鍵字DEC是DECIMAL的同義詞。
  • BIT數(shù)據(jù)類型保存位字段值货邓,并且支持MyISAM秆撮、MEMORY、InnoDB和BDB表换况。
  • 作為SQL標準的擴展职辨,MySQL也支持整數(shù)類型TINYINT、MEDIUMINT和BIGINT戈二。下面的表顯示了需要的每個整數(shù)類型的存儲和范圍拨匆。

| 類型 | 字節(jié) | 最小值(帶符號的) | 最大值(帶符號 |最小值(無符號)|最大值(無符號)|
| ------------- |:-------------:| -----:|
|TINYINT | 1|-128 | 127|0|255|
| SMALLINT| 2|-32768|32767|0|65535|
| MEDIUMINT | 3|-8388608|8388607|0|16777215|
| INT | 4|-2147483648|2147483647|0|4294967295|
| BIGINT | 8|-9223372036854775808|9223372036854775807|0|18446744073709551615|

  • Mysql類型關(guān)鍵字后面的括號內(nèi)指定整數(shù)值的顯示寬度(例如,INT(4))挽拂。該可選顯示寬度規(guī)定用于顯示寬度小于指定的列寬度的值時從左側(cè)填滿寬度惭每。顯示寬度并不限制可以在列內(nèi)保存的值的范圍,也不限制超過列的指定寬度的值的顯示亏栈。

  • 當(dāng)結(jié)合可選擴展屬性ZEROFILL使用時台腥, 默認補充的空格用零代替。例如绒北,對于聲明為INT(5) ZEROFILL的列黎侈,值4檢索為00004。請注意如果在整數(shù)列保存超過顯示寬度的一個值闷游,當(dāng)MySQL為復(fù)雜聯(lián)接生成臨時表時會遇到問題峻汉,因為在這些情況下MySQL相信數(shù)據(jù)適合原列寬度。

  • 所有整數(shù)類型可以有一個可選(非標準)屬性UNSIGNED脐往。當(dāng)你想要在列內(nèi)只允許非負數(shù)和該列需要較大的上限數(shù)值范圍時可以使用無符號值休吠。所以int(10)與int(11)后的括號中的字符表示顯示寬度,整數(shù)列的顯示寬度與mysql需要用多少個字符來顯示該列數(shù)值业簿,與該整數(shù)需要的存儲空間的大小都沒有關(guān)系瘤礁,int類型的字段能存儲的數(shù)據(jù)上限還是2147483647(有符號型)和4294967295(無符號型)。

  • 浮點和定點類型也可以為UNSIGNED梅尤。同數(shù)類型柜思,該屬性防止負值保存到列中。然而巷燥,與整數(shù)類型不同的是赡盘,列值的上范圍保持不變。如果為一個數(shù)值列指定ZEROFILL缰揪,MySQL自動為該列添加UNSIGNED屬性陨享。對于浮點列類型,在MySQL中單精度值使用4個字節(jié),雙精度值使用8個字節(jié)霉咨。

  • FLOAT類型用于表示近似數(shù)值數(shù)據(jù)類型。SQL標準允許在關(guān)鍵字FLOAT后面的括號內(nèi)選擇用位指定精度(但不能為指數(shù)范圍)拍屑。MySQL還支持可選的只用于確定存儲大小的精度規(guī)定途戒。0到23的精度對應(yīng)FLOAT列的4字節(jié)單精度。24到53的精度對應(yīng)DOUBLE列的8字節(jié)雙精度僵驰。

  • MySQL允許使用非標準語法:FLOAT(M,D)或REAL(M,D)或DOUBLE PRECISION(M,D)喷斋。這里,“(M,D)”表示該值一共顯示M位整數(shù)蒜茴,其中D位位于小數(shù)點后面星爪。例如,定義為FLOAT(7,4)的一個列可以顯示為-999.9999粉私。MySQL保存值時進行四舍五入顽腾,因此如果在FLOAT(7,4)列內(nèi)插入999.00009,近似結(jié)果是999.0001诺核。

  • MySQL將DOUBLE視為DOUBLE PRECISION(非標準擴展)的同義詞抄肖。MySQL還將REAL視為DOUBLE PRECISION(非標準擴展)的同義詞,除非SQL服務(wù)器模式包括REAL_AS_FLOAT選項窖杀。

  • 為了保證最大可能的可移植性漓摩,需要使用近似數(shù)值數(shù)據(jù)值存儲的代碼應(yīng)使用FLOAT或DOUBLE PRECISION,不規(guī)定精度或位數(shù)入客。
    DECIMAL和NUMERIC類型在MySQL中視為相同的類型管毙。它們用于保存必須為確切精度的值,例如貨幣數(shù)據(jù)桌硫。當(dāng)聲明該類型的列時夭咬,可以(并且通常要)指定精度和標度;例如:salary DECIMAL(5,2)在該例子中铆隘,5是精度皱埠,2是標度。精度表示保存值的主要位數(shù)咖驮,標度表示小數(shù)點后面可以保存的位數(shù)边器。

  • 在MySQL 5.1中以二進制格式保存DECIMAL和NUMERIC值。
    標準SQL要求salary列能夠用5位整數(shù)位和兩位小數(shù)保存任何值托修。因此忘巧,在這種情況下可以保存在salary列的值的范圍是從-999.99到999.99。

  • 在標準SQL中睦刃,語法DECIMAL(M)等價于DECIMAL(M,0)砚嘴。同樣,語法DECIMAL等價于DECIMAL(M,0),可以通過計算確定M的值际长。在MySQL 5.1中支持DECIMAL和NUMERIC數(shù)據(jù)類型的變量形式耸采。M默認值是10。

  • DECIMAL或NUMERIC的最大位數(shù)是65工育,但具體的DECIMAL或NUMERIC列的實際范圍受具體列的精度或標度約束虾宇。如果此類列分配的值小數(shù)點后面的位數(shù)超過指定的標度允許的范圍,值被轉(zhuǎn)換為該標度如绸。(具體操作與操作系統(tǒng)有關(guān)嘱朽,但一般結(jié)果均被截取到允許的位數(shù))。

  • BIT數(shù)據(jù)類型可用來保存位字段值怔接。BIT(M)類型允許存儲M位值搪泳。M范圍為1到64。

  • 要指定位值扼脐,可以使用b’value’符岸军。value是一個用0和1編寫的二進制值。例如瓦侮,b’111′和b’100000000′分別表示7和128凛膏。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市脏榆,隨后出現(xiàn)的幾起案子猖毫,更是在濱河造成了極大的恐慌,老刑警劉巖须喂,帶你破解...
    沈念sama閱讀 206,214評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件吁断,死亡現(xiàn)場離奇詭異,居然都是意外死亡坞生,警方通過查閱死者的電腦和手機仔役,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來是己,“玉大人又兵,你說我怎么就攤上這事∽浞希” “怎么了沛厨?”我有些...
    開封第一講書人閱讀 152,543評論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長摔认。 經(jīng)常有香客問我逆皮,道長,這世上最難降的妖魔是什么参袱? 我笑而不...
    開封第一講書人閱讀 55,221評論 1 279
  • 正文 為了忘掉前任电谣,我火速辦了婚禮秽梅,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘剿牺。我一直安慰自己企垦,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,224評論 5 371
  • 文/花漫 我一把揭開白布晒来。 她就那樣靜靜地躺著钞诡,像睡著了一般。 火紅的嫁衣襯著肌膚如雪潜索。 梳的紋絲不亂的頭發(fā)上臭增,一...
    開封第一講書人閱讀 49,007評論 1 284
  • 那天懂酱,我揣著相機與錄音竹习,去河邊找鬼。 笑死列牺,一個胖子當(dāng)著我的面吹牛整陌,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播瞎领,決...
    沈念sama閱讀 38,313評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼泌辫,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了九默?” 一聲冷哼從身側(cè)響起震放,我...
    開封第一講書人閱讀 36,956評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎驼修,沒想到半個月后殿遂,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,441評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡乙各,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,925評論 2 323
  • 正文 我和宋清朗相戀三年墨礁,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片耳峦。...
    茶點故事閱讀 38,018評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡恩静,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蹲坷,到底是詐尸還是另有隱情驶乾,我是刑警寧澤,帶...
    沈念sama閱讀 33,685評論 4 322
  • 正文 年R本政府宣布循签,位于F島的核電站轻掩,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏懦底。R本人自食惡果不足惜唇牧,卻給世界環(huán)境...
    茶點故事閱讀 39,234評論 3 307
  • 文/蒙蒙 一罕扎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧丐重,春花似錦腔召、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至崖蜜,卻和暖如春浊仆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背豫领。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評論 1 261
  • 我被黑心中介騙來泰國打工抡柿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人等恐。 一個月前我還...
    沈念sama閱讀 45,467評論 2 352
  • 正文 我出身青樓洲劣,卻偏偏與公主長得像,于是被迫代替她去往敵國和親课蔬。 傳聞我的和親對象是個殘疾皇子囱稽,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,762評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 本文基于MySQL5.6版本進行描述從大的方面來講,MySQL的數(shù)據(jù)類型分為4種 數(shù)值類型 日期和時間 字符串類型...
    黑哥兒666閱讀 742評論 0 0
  • 什么是數(shù)據(jù)庫二跋? 數(shù)據(jù)庫是存儲數(shù)據(jù)的集合的單獨的應(yīng)用程序战惊。每個數(shù)據(jù)庫具有一個或多個不同的API,用于創(chuàng)建扎即,訪問吞获,管理...
    chen_000閱讀 4,030評論 0 19
  • 字段類型數(shù)值MySQL 的數(shù)值數(shù)據(jù)類型可以大致劃分為兩個類別,一個是整數(shù)铺遂,另一個是浮點數(shù)或小數(shù)衫哥。許多不同的子類型對...
    小慕先森閱讀 933評論 0 1
  • “將來我烈山城文家將會重新進入文氏宗族!” 聽聞此話襟锐,文喆一愣撤逢,旋即明白,家中長輩與自己的想法是一致的粮坞。重回文氏宗...
    北林可樂閱讀 448評論 0 0
  • 小茶看著書桌下不再擁擠的小空間蚊荣,發(fā)出滿足地嘆息。目光掃向書架莫杈,整理還要繼續(xù)互例。 不巧,四級詞匯下面是本病歷筝闹,小茶知道...
    姜糖紅茶閱讀 246評論 0 0