<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
藉由本篇文章來探討下在Mysql資料庫中數值型別tinyint(1)和tinyint(4) 有啥區別呢?
先來了解下mysql中字串型別varchar(M) 和數值型別tinyint(M) 的區別?
字串列型別: varchar(M) 而言,M 是欄位中可以儲存的最大字元長度,也就是說是欄位長度。根據設定,當你插入超出欄位長度的資料時,你很可能會收到錯誤提示,即使沒有收到錯誤提示,你插入的資料也會被自動截斷以適應該欄位的預定義長度。所以,varchar(20) 和 varchar(40) 是不同的,其真實反映了該欄位可以儲存的資料長度。
數值列型別:其長度修飾符表示最大顯示寬度,與該欄位物理儲存沒有任何關係。也就是說,tinyint(1) 和 tinyint(4) 能夠儲存的數值範圍都是-128…127 (or for unsigned values 0…255),他們是相同的資料型別,當然他們還是有一點差異,以下會有說明。
對於 tinyint 資料型別,只佔 1 個位元組:
- 無符號的(unsigned),範圍是 0 到 255,預設長度是 3。
- 有符號的(signed),範圍是 -128 到 127,預設長度是 4。
範圍演演算法:tinyint佔1個位元組,一個位元組 8 位,也就是1*8=8,可以表示的數位個數是 2的 8 次方(2^8 = 256個數位)。
區別:若使用了 zerofill,當實際長度達不到指定的顯示長度時,就會用 0 在前面補齊。(簡記zerofill作用就是補零)
先建立一張測試表,對 tinyint 型別都使用 zerofill。
CREATE TABLE `pre_demo` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主鍵', `unsigned_t` tinyint(3) unsigned zerofill NOT NULL DEFAULT '000', `signed_t` tinyint(4) unsigned zerofill NOT NULL DEFAULT '0000', `t1` tinyint(1) unsigned zerofill NOT NULL DEFAULT '0', `t2` tinyint(2) unsigned zerofill NOT NULL DEFAULT '00', `t3` tinyint(3) unsigned zerofill NOT NULL DEFAULT '000', `t4` tinyint(4) unsigned zerofill NOT NULL DEFAULT '0000', `t5` tinyint(5) unsigned zerofill NOT NULL DEFAULT '00000', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
然後,插入測試資料。
NSERT INTO pre_demo VALUES(NULL,8,8,8,8,8,8,8); INSERT INTO pre_demo VALUES(NULL,123,123,123,123,123,123,123);
最後,查詢資料表中的資料。
mysql> SELECT * FROM pre_demo; +----+------------+----------+-----+-----+-----+------+-------+ | id | unsigned_t | signed_t | t1 | t2 | t3 | t4 | t5 | +----+------------+----------+-----+-----+-----+------+-------+ | 1 | 008 | 0008 | 8 | 08 | 008 | 0008 | 00008 | | 2 | 123 | 0123 | 123 | 123 | 123 | 0123 | 00123 | +----+------------+----------+-----+-----+-----+------+-------+ 2 rows in set (0.00 sec)
mysql> SELECT *,LENGTH(id),LENGTH(unsigned_t),LENGTH(t1) FROM pre_demo; +----+------------+----------+-----+-----+-----+------+-------+------------+--------------------+------------+ | id | unsigned_t | signed_t | t1 | t2 | t3 | t4 | t5 | LENGTH(id) | LENGTH(unsigned_t) | LENGTH(t1) | +----+------------+----------+-----+-----+-----+------+-------+------------+--------------------+------------+ | 1 | 008 | 0008 | 8 | 08 | 008 | 0008 | 00008 | 1 | 3 | 1 | | 2 | 123 | 0123 | 123 | 123 | 123 | 0123 | 00123 | 1 | 3 | 3 | +----+------------+----------+-----+-----+-----+------+-------+------------+--------------------+------------+ 2 rows in set (0.00 sec)
http://blog.darkmi.com/2016/06/24/3110.html
https://blog.csdn.net/lamp_yang_3533/article/details/100061678
到此這篇關於淺談Mysql tinyint(1)與tinyint(4)的區別的文章就介紹到這了,更多相關Mysql tinyint(1)與tinyint(4)內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45