BIGINT 是 ab 字節(jié)或 64 位整數(shù)值,在存儲大整數(shù)值時非常有用。
MySQL BIGINT 與任何其他 MySQL 整數(shù)數(shù)據(jù)類型一樣,可以是有符號或無符號的。有符號數(shù)據(jù)類型表示該列可以存儲正整數(shù)和負(fù)整數(shù)值。這是 MySQL 中大多數(shù)整數(shù)類型的默認(rèn)類型。因此,除非明確指定,否則任何整數(shù)類型列都可以存儲正整數(shù)和負(fù)整數(shù)。
另一方面,無符號數(shù)據(jù)類型表示該列只能存儲正整數(shù)值。
有符號 MySQL BIGINT 類型的范圍在 -9223372036854775808 和 9223372036854775807 之間
CREATE DATABASE IF NOT EXISTS integers; USE integers; 接下來,讓我們創(chuàng)建一個表并用各種 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 類型的范圍內(nèi)。
SELECT * FROM examples;
示例 2
在下一個案例中,讓我們嘗試添加所有負(fù)值。示例查詢?nèi)缦拢?br /> INSERT INTO examples(x,y,z) VALUES (-1,-2,-3); ERROR 1264 (22003): Out of range value for column 'y' at row 1 在這種情況下,查詢失敗,因為 y 列是無符號的。因此,為列分配負(fù)值超出了列范圍。