MySQL Integer類型與INT(11)

来源:https://www.cnblogs.com/polk6/archive/2020/03/15/11595107.html
-Advertisement-
Play Games

介紹MySQL Integer類型的幾種分類,以及INT(11)中11數字表達的意思 ...


1.介紹

Integer類型,即整數類型,MySQL支持的整數類型有TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT。

 

1.1 空間和範圍

每種整數類型所需的存儲空間和範圍如下:

類型 位元組

最小值

(有符號)

最大值

(有符號)

最小值

(無符號)

最大值

(無符號)

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

-263

(-9223372036854775808)

263-1

(9223372036854775807)

0

264-1

(18446744073709551615)

 

2. INT(11)

2.1 數字是否限制長度?

id INT(11) NOT NULL AUTO_INCREMENT,

在一些建表語句會出現上面 int(11) 的類型,那麼其代表什麼意思呢?

對於Integer類型括弧中的數字稱為欄位的顯示寬度。這與其他類型欄位的含義不同。對於DECIMAL類型,表示數字的總數。對於字元欄位,這是可以存儲的最大字元數,例如VARCHAR(20)可以存儲20個字元。

顯示寬度並不影響可以存儲在該列中的最大值。INT(5) 和 INT(11)可以存儲相同的最大值。哪怕設置成 INT(20) 並不意味著將能夠存儲20位數字(BIGINT),該列還是只能存儲INT的最大值。

示例

創建一個臨時表:

CREATE TEMPORARY TABLE demo_a (
	id INT(11) NOT NULL AUTO_INCREMENT,
	a INT(1) NOT NULL,
	b INT(5) NOT NULL,
	PRIMARY KEY (`id`)
)

插入超過"長度"的數字:

INSERT INTO demo_a(a,b) VALUES(255, 88888888);

查看結果:發現數字並不是設置長度

mysql> SELECT * FROM demo_a;
+----+-----+----------+
| id | a   | b        |
+----+-----+----------+
|  1 | 255 | 88888888 |
+----+-----+----------+
1 row in set (0.03 sec)

 

2.2 數字表達什麼意思?

當列設置為UNSIGNED ZEROFILL時,INT(11)才有意義,其表示的意思為如果要存儲的數字少於11個字元,則這些數字將在左側補零。

註意:ZEROFILL預設的列為無符號,因此不能存儲負數。

示例

創建一個臨時表:b列設置為UNSIGNED ZEROFILL

CREATE TEMPORARY TABLE demo_a (
	id INT(11) NOT NULL AUTO_INCREMENT,
	a INT(11) NOT NULL,
	b INT(11) UNSIGNED ZEROFILL NOT NULL,
	PRIMARY KEY (`id`)
);

 插入數值:

INSERT INTO demo_a(a,b) VALUES(1, 1);

 結果:b列的左側使用了0填充長度

mysql> SELECT * FROM demo_a;
+----+---+-------------+
| id | a | b           |
+----+---+-------------+
|  1 | 1 | 00000000001 |
+----+---+-------------+
1 row in set (0.18 sec)

  

3. 參考資料

Integer類型https://dev.mysql.com/doc/refman/5.6/en/integer-types.html

What does int(11) means in MySQL?https://www.virendrachandak.com/techtalk/mysql-int11-what-does-it-means/

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前言 Identity Server4基於OAuth2.0協議的一套用於身份認證和授權的框架。OAuth2.0協議是一個委托協議,通過這個協議,我們可以讓某個客戶端頂著一個有資源訪問許可權的身份去訪問那些被保護的資源。授權的流程簡單概括起來,客戶端應用需要先去請求Identity Server4,如果 ...
  • 前要: 有一12年買的手提電腦,打算在其上直接裝linux部署分散式爬蟲順便學linux 唔,開機吧……然開機動畫沒有,只有間斷有序的悲鳴,一查,主板逝世 賣給收買舊電腦估計不到20…不能忍,想了想不如裝移動硬碟上做個mobile linux,OK,遂寫此篇 工具: 硬碟盒/移動硬碟、U盤、(環境w ...
  • Ansible的指定用戶與密碼登錄、免密登錄、指定ssh埠以及主機清單Inventory配置 ...
  • [linux內核分析———SLAB原理及實現 ](https://blog.csdn.net/chenxiancool/article/details/7638804) Slab原理及實現 1. 整體關係圖 ! 註:SLAB,SLOB,SLUB都是內核提供的分配器,其前端介面都是一致的,其中SLAB ...
  • 最近使用brew update時,發現homebrew更新緩慢;於是進行更換為國內源; 晚上這種教程很多,我選擇的是中科大的源;當然清華的源也是可以的,這取決於你當前所處的地理位置,這樣有更通暢的網路鏈接; https://mirrors.ustc.edu.cn/help/brew.git.html ...
  • turtle庫的學習筆記(python) turtle(海龜)是Python重要的標準庫之一,它能夠進行基本的圖形繪製。turtle圖形繪製的概念誕生於1969年,成功應用於LOGO編程語言。turtle庫繪製圖形有一個基本框架:一個小海龜在坐標系中爬行,其爬行軌跡形成了繪製圖形。剛開始繪製時,小海 ...
  • 原文鏈接: "https://xiaoheidiannao.com/articles/Vim For Chrome.html" "Chrome瀏覽器" 有很多強大的擴展程式,其中我最喜歡的就是Vimium,其他的擴展程式都可以不安裝,但就是這個一定要安裝,用過以後你就會發現你已經離不開它了! Vim ...
  • 背景 最近公司系統還原用戶時偶爾會出現部分用戶信息未還原成功的問題,最為開發人員,最頭疼的不是代碼存在bug,而是測試發現了bug,但一旦我去重現,它就不見了。Are you kidding me? 經過漫長的溝通與嘗試,終於發現了端倪,這個問題只有在多人同時操作修改同一用戶信息時才會出現。 哦,那 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...