MySQL BIGINT 数据类型介绍

BIGINT 是 MySQL 中一种常用的数据类型,它用于存储大整数值。

语法

BIGINT 数据类型可以用于存储介于 -9223372036854775808 和 9223372036854775807 之间的整数。它的语法如下:

BIGINT[(M)] [UNSIGNED] [ZEROFILL]

其中,M 表示显示宽度,范围为 1 到 20。UNSIGNED 用于指示该列不包含负数,ZEROFILL 用于在显示宽度不足时填充 0。

使用场景

BIGINT 数据类型通常用于存储需要超过 INT 数据类型上限的整数。例如,在计算机科学中,BIGINT 通常用于存储非常大的数字,如哈希值、文件大小等。在金融领域,BIGINT 常用于存储货币金额和股票交易量等数据。

示例

下面是两个使用 BIGINT 数据类型的示例:

这个示例使用 BIGINT 存储文件的大小。

CREATE TABLE file_sizes (
  file_name VARCHAR(255) NOT NULL,
  size BIGINT UNSIGNED NOT NULL,
  PRIMARY KEY (file_name)
);

INSERT INTO file_sizes (file_name, size) VALUES
  ('file1.txt', 102401238401),
  ('file2.txt', 3847283123),
  ('file3.txt', 98213233844);

在上面的示例中,我们创建了一个名为 file_sizes 的表,其中包含文件名和文件大小两个列。文件大小使用了 BIGINT UNSIGNED 数据类型,因为它们不可能为负数。我们向表中插入了三个示例记录,每个记录包含文件名和文件大小。

接下来,我们将使用 BIGINT 数据类型来存储货币金额:

CREATE TABLE orders (
  order_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
  customer_id INT UNSIGNED NOT NULL,
  amount BIGINT NOT NULL,
  PRIMARY KEY (order_id)
);

INSERT INTO orders (customer_id, amount) VALUES
  (1, 5000000000),
  (2, 2500000000),
  (3, 10000000000);

在上面的示例中,我们创建了一个名为 orders 的表,其中包含订单 ID、客户 ID 和订单金额。订单金额使用了 BIGINT 数据类型,因为它们可能非常大。我们向表中插入了三个示例记录,每个记录包含客户 ID 和订单金额。

结论

在本文中,我们介绍了 MySQL 中的 BIGINT 数据类型。BIGINT 通常用于存储超过 INT 数据类型上限的整数,例如哈希值、文件大小、货币金额和股票交易量等数据。在使用 BIGINT 数据类型时,应该注意其存储范围和显示宽度。