首页/ 学科题库/ mysql/ MySQL 整数类型
mysql 实战教程

MySQL 整数类型

2026-05-15 约 6 分钟 juanwangdev

MySQL 整数类型

MySQL 整数类型用于存储不带小数的数字,不同类型占用不同存储空间和取值范围。

整数类型对照表

类型字节有符号范围无符号范围
TINYINT1-128 ~ 1270 ~ 255
SMALLINT2-32768 ~ 327670 ~ 65535
MEDIUMINT3-8388608 ~ 83886070 ~ 16777215
INT4-2147483648 ~ 21474836470 ~ 4294967295
BIGINT8非常大非常大

基本语法

SQL
-- 创建带整数字段的表
CREATE TABLE users (
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    age TINYINT UNSIGNED,
    score SMALLINT
);

-- 插入数据
INSERT INTO users (age, score) VALUES (25, 100);

-- 指定显示宽度(不影响存储范围)
CREATE TABLE items (
    code INT(5) ZEROFILL  -- 不足5位用0填充
);

UNSIGNED 属性

SQL
-- 无符号整数(只存储正数,范围翻倍)
CREATE TABLE products (
    id INT UNSIGNED,
    stock SMALLINT UNSIGNED
);

UNSIGNED 使取值范围扩大一倍,但只能存储非负数。

要点总结

  • 根据数据范围选择最小够用的整数类型
  • UNSIGNED 可扩大正数范围一倍
  • INT(M) 中的 M 是显示宽度,不影响存储范围
  • 自增主键常用 INT 或 BIGINT
想在手机上练这篇的配套题目?
使用微信 卷王开发者小程序/App,首页顶部扫一扫识别下方二维码,即可解锁本讲对应真题与错题本。
了解产品 App
← 上一篇 MySQL 数据类型概述 下一篇 → MySQL 浮点数类型