久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

mysql長整型指的是什么

210次閱讀
沒有評論

共計 2569 個字符,預計需要花費 7 分鐘才能閱讀完成。

本篇內容介紹了“mysql 長整型指的是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

mysql 的長整型是“BIGINT”。BIGINT 是 ab 字節或 64 位整數值,在存儲極大整數值時非常有用。BIGINT 與其他整數數據類型一樣,可以是有符號或無符號的;有符號數據類型表示該列可以存儲正整數和負整數值,而無符號數據類型表示該列只能存儲正整數值。有符號 BIGINT 類型的范圍在“-9223372036854775808”和“9223372036854775807”之間。

本教程操作環境:windows7 系統、mysql8 版本、Dell G3 電腦。

整數類型又稱數值型數據,數值型數據類型主要用來存儲數字。

MySQL 提供了多種數值型數據類型,不同的數據類型提供不同的取值范圍,可以存儲的值范圍越大,所需的存儲空間也會越大。

MySQL 主要提供的整數類型有 TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,其屬性字段可以添加 AUTO_INCREMENT 自增約束條件。下表中列出了 MySQL 中的數值類型。

類型大小范圍(有符號)范圍(無符號)用途 TINYINT1 個字節 (-128,127)(0,255) 小整數值 SMALLINT2 個字節 (-32 768,32 767)(0,65 535) 大整數值 MEDIUMINT3 個字節 (-8 388 608,8 388 607)(0,16 777 215) 大整數值 INT 或 INTEGER4 個字節 (-2 147 483 648,2 147 483 647)(0,4 294 967 295) 大整數值 BIGINT8 個字節 (-9,223,372,036,854,775,808,9 223 372 036 854 775 807)(0,18 446 744 073 709 551 615) 極大整數值

從上表中可以看到,不同類型的整數存儲所需的字節數不相同,占用字節數最小的是 TINYINT 類型,占用字節最大的是 BIGINT 類型,占用的字節越多的類型所能表示的數值范圍越大。因而,mysql 的長整型是“BIGINT”。

MySQL BIGINT

BIGINT 是 ab 字節或 64 位整數值,在存儲大整數值時非常有用。

MySQL BIGINT 與任何其他 MySQL 整數數據類型一樣,可以是有符號或無符號的。有符號數據類型表示該列可以存儲正整數和負整數值。這是 MySQL 中大多數整數類型的默認類型。因此,除非明確指定,否則任何整數類型列都可以存儲正整數和負整數。

另一方面,無符號數據類型表示該列只能存儲正整數值。

有符號 MySQL BIGINT 類型的范圍在 -9223372036854775808 和 9223372036854775807 之間

對于無符號 BIGINT 類型,取值范圍為 0 到 18446744073709551615。

BIGINT 類型的另一個屬性是 ZEROFILL。在列上指定此屬性后,該列將自動設置為 UNSIGNED。

zerofill 屬性也用零填充空格。

BIGINT 示例:

讓我們看幾個例子來說明如何使用 BIGINT 類型。

CREATE DATABASE IF NOT EXISTS integers;
USE integers;

接下來,讓我們創建一個表并用各種 BIGINT 列填充它,如下面的查詢所示:

CREATE TABLE examples(x BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY, y BIGINT UNSIGNED, z BIGINT ZEROFILL );

示例 1

讓我們首先嘗試將所有正值添加到表中:

INSERT INTO examples(x,y,z) VALUES (1,2,3);

在上面的示例查詢中,這些值是可接受的,因為它們在有符號、無符號和 zerofill BIGINT 類型的范圍內。

SELECT * FROM examples;

示例 2

在下一個案例中,讓我們嘗試添加所有負值。示例查詢如下:

INSERT INTO examples(x,y,z) VALUES (-1,-2,-3);
ERROR 1264 (22003): Out of range value for column  y  at row 1

在這種情況下,查詢失敗,因為 y 列是無符號的。因此,為列分配負值超出了列范圍。

示例 3

我們可以觀察到與上述第三列類似的情況。zerofill 屬性自動使列無符號,使添加負值超出范圍。一個例子是:

INSERT INTO examples(x,y,z) VALUES (-1,2,-3);
ERROR 1264 (22003): Out of range value for column  z  at row 1

示例 4

現在讓我們嘗試添加每種類型的最大值。一個示例查詢是:

INSERT INTO examples(x,y,z) VALUES (-9223372036854775808, 9223372036854775808, 9223372036854775808);

在上面的示例中,由于所有值都在范圍內,因此查詢成功執行。

考慮下面的查詢:

INSERT INTO examples(x,y,z) VALUES (9223372036854775807, 9223372036854775808, 9223372036854775808);

您會注意到所有值都在最大值上。由于 x 列設置為 AUTO_INCREMENT,因此向其添加值將失敗。

INSERT INTO examples(y,z) VALUES (9223372036854775808, 9223372036854775808);
ERROR 1062 (23000): Duplicate entry  9223372036854775807  for key  examples.PRIMARY

但是,如果在 MySQL 中禁用了嚴格模式,您可以插入超出范圍的值。

SELECT * FROM examples;

“mysql 長整型指的是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-13發表,共計2569字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 清水河县| 武宁县| 云浮市| 濮阳县| 大关县| 汉中市| 赫章县| 宜川县| 平和县| 西乌珠穆沁旗| 崇州市| 兖州市| 丰县| 科技| 金川县| 太仓市| 叙永县| 喀喇| 澄迈县| 门头沟区| 綦江县| 台湾省| 青州市| 吴旗县| 永清县| 新昌县| 新郑市| 浪卡子县| 沙河市| 平阳县| 桐庐县| 五莲县| 铁力市| 太湖县| 临江市| 陵川县| 祁连县| 吴川市| 九江市| 保山市| 怀远县|