Mariadb----数据类型(三)

第一部分: 整数

存储类型——数据范围为-2^(n-1)到2^(n-1)-1,这里的n是所需存储空间的位数。1个字节=8位

 

类型名称数据库

占用位数/(字节)测试

数据范围(有符号)spa

数据范围(无有符号)3d

TYPE(M) 默认code

TINYINTblog

8/(1)ip

-2^7 ~ 2^7-1 ((-128,127))get

(0,255)table

4test

SMALLINT

16/(2)

-2^15~2^15-1 (-32 768,32 767)

(0,65 535)

6

MEDIUMINT

24/(3)

-2^23~2^23-1 (-8 388 608,8 388 607)

(0,16 777 215)

9

INT

32/(4)

-2^31-2^32-1 (-2 147 483 648,2 147 483 647)

(0,4 294 967 295)

11

BIGINT

64/(8)

-2^63~2^63-1 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807)

(0,18 446 744 073 709 551 615)

20

实例代码

1.1 建立表, 并定义宽度, 为显示完整使用ZEROFILL;

MariaDB [typeDB]> CREATE TABLE int_test

    -> (intNum INT(4) ZEROFILL,

    -> smallNum SMALLINT(3) ZEROFILL);

Query OK, 0 rows affected (0.02 sec)

1.2 插入数据测试

MariaDB [typeDB]> INSERT INTO int_test

    -> (intNum, smallNum) VALUES

    -> (1, 2),

    -> (10, 20),

    -> (1111, 222),

    -> (11111, 2222);

Query OK, 4 rows affected (0.00 sec)

Records: 4  Duplicates: 0  Warnings: 0

1.3 查询结果, 不足指定宽度时补0

MariaDB [typeDB]> SELECT * FROM int_test;

+--------+----------+

| intNum | smallNum |

+--------+----------+

|   0001 |      002 |

|   0010 |      020 |

|   1111 |      222 |

|  11111 |     2222 |

+--------+----------+

4 rows in set (0.00 sec)

注释: 不管是INT(2)仍是int(11),它在数据库里面存储的都是4个字节(8位)的长度,存储的值的范围为(-2 147 483 648,2 147 483 647), 而不是只能存4位或11位数字, INT(M), M: 表明的只是宽度;

相关文章
相关标签/搜索