`
乌拉蕾
  • 浏览: 72165 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

mysql中 int(M)中M的含义

    博客分类:
  • DB
阅读更多

     昨天写sql文件时把以前一直不是很明白的地方弄明白了,就是在设置int型的时候,需要设置int(M),以前知道这个M最大是255,但是到底应该设置多少并没有在意。

     查了下官方manual 有这样的语句:

     M indicates the maximum display width for integer types. The maximum legal display width is 255.

     这个M 就是maximum display width。那什么是maximum display width?看了下面的例子很容易说明了,注意zerofill

 

 mysql> create table b ( b int (4));
Query OK, 0 rows affected (0.25 sec)

mysql> insert into b values ( 12345 );
Query OK, 1 row affected (0.00 sec)

mysql> select * from b;
+-------+
| b     |
+-------+
| 12345 |
+-------+
1 row in set (0.00 sec)

mysql> alter table b change b b int(11);
Query OK, 1 row affected (0.00 sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> select * from b;
+-------+
| b     |
+-------+
|
12345 |
+-------+
1 row in set (0.00 sec)

mysql> alter table b change b b int(11) zerofill ;
Query OK, 1 row affected (0.00 sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> select * from b ;
+-------------+
| b           |
+-------------+
| 000000
12345 |
+-------------+
1 row in set (0.00 sec)

mysql> alter table b change b b int(4) zerofill ;
Query OK, 1 row affected (0.08 sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> select * from b ;
+-------+
| b     |
+-------+
| 10000 |
+-------+
1 row in set (0.00 sec)

mysql> alter table b change b b int(6) zerofill ;
Query OK, 1 row affected (0.01 sec)
Records: 1  Duplicates: 0  Warnings: 0

mysql> select * from b;
+--------+
| b      |
+--------+
| 0
12345 |
+--------+
1 row in set (0.00 sec)

     以上的例子说明了,这个M 的表示显示宽度,他跟着zerofill 一起才有意义。就算前面设置的M的值比数值实际的长度小对数据也没有任何影响。

0
0
分享到:
评论

相关推荐

    详解MySQL数据类型int(M)中M的含义

    介绍 MySQL 数据类型中的 integer types 有点奇怪。你可能会见到诸如:int(3)、int(4)、int(8) 之类的 int 数据类型。刚接触 MySQL 的时候,我还以为 int(3) 占用的存储...原来,在 int(M) 中,M 的值跟 int(M) 所占

    mysql int(3)与int(11)的区别详解

    mysql int(3)与int(11)的区别 总结,int(M) zerofill,加上zerofill后M才表现出有点点效果,比如 int(3) zerofill,你插入到数据库里的是10,则实际插入为010,也就是在前面补充加了一个0.如果int(3)和int(10)不加...

    简单谈谈MySQL中的int(m)

    设置int型的时候,需要设置int(M),以前知道这个M最大是255,但是到底应该设置多少并没有在意。注意zerofill,今天我们来简单探讨下

    MySQL 数据类型 详解

    1、整型 MySQL数据类型 含义(有符号) tinyint(m) 1个字节 范围(-128~127) ...smallint(m) ...mediumint(m) ...int(m) ...bigint(m) ...取值范围如果加了unsigned,则最大值翻...int(m)里的m是表示SELECT查询结果集中的显示宽度

    MYSQL安装包官方试用版

    对于CHAR、VARCHAR和TEXT类型,前面的表中的值L和M应解释为字符数目,并且列定义中的这些类型的长度表示字符数目。例如,要想保存一个TINYTEXT值需要L字符+ 1个字节。 要想计算用于保存具体CHAR、VARCHAR或者TEXT列...

    详解MySQL数据类型DECIMAL(N,M)中N和M分别表示的含义

    同事问MySQL数据类型DECIMAL(N,M)中N和M分别表示什么含义,M不用说,显然是小数点后的小数位数,但这个N究竟是小数点之前的最大位数,还是加上小数部分后的最大位数?这个还真记不清了。于是乎,创建测试表验证了...

    mysql日期date型和int型互换的方法

    一、date型转换成int型 UNIX_TIMESTAMP(‘1997-10-04 22:23:00’) =====> 875996580 二、int型转换成date型 FROM_UNIXTIME...以上就是小编为大家带来的mysql日期date型和int型互换的方法全部内容了,希望大家

    Mysql数据库设计.pdf

    Mysql数据库设计 数据库设计 MYSQL数据库设计 串转义序列 \0 NUL(ASCLL 0) \' \" \b 退格 \n 新⾏ \r 回车 \t 制表符 \\ 反斜杠 数值列类型 TINYINT 1字节 ⾮常⼩的整数 有符号值:-128⾄127 ⽆符号值:0⾄255 ...

    MySQL命令大全

    mysql> alter table MyClass add passtest int(4) default ’′ 8、更改表名: 命令:rename table 原表名 to 新表名; 例如:在表MyClass名字更改为YouClass mysql> rename table MyClass to YouClass; 更新...

    MYSQL常用命令大全

    mysql> alter table MyClass add passtest int(4) default '0' 8、更改表名: 命令:rename table 原表名 to 新表名; 例如:在表MyClass名字更改为YouClass mysql> rename table MyClass to YouClass; 更新字段...

    mysql基础只是总结

    int[M] M默认11 人为设定系统也会根据自动分配空间(类似char和varchar) bigint float[(M,D)] 10的(M-D)次方->代表最大值 D->代表保留位数不够补0 //For float(M,D), double(M,D) or decimal(M,D), M must be >=...

    mysql时间戳转成常用可读时间格式的两种方法

    附:在mysql中,一个时间字段的存储类型是int(11),怎么转化成字符类型,比方存储为13270655222,需要转化为yyyy -mm-dd的形式 使用 FROM_UNIXTIME函数,具体如下: 代码:FROM_UNIXTIME(unix_timestamp,format) ...

    asp.net 结合mysql存储过程进行分页代码

    代码如下:CREATE PROCEDURE p_pageList ( m_pageNo int , m_perPageCnt int , m_column varchar(1000) , m_table varchar(1000) , m_condition varchar(1000), m_orderBy varchar(200) , out m_totalPageCnt int ) ...

    解决Python连接MySQL时出现的问题

    终于让python和MySQL连接上了,花了两天时间才成功建立连接,下面是我遇到问题。 在安装MySQL时候要注意有一个选择,如果你选择了Use Strong Password Encryption for Authentication,就会强密码加密,建...python -m

    Sphinx+MySQL_jgsj

    / 8GB内存)、RedHat AS4 Linux操作系统、MySQL 5.1.26、MyISAM存储引擎、key_buffer=1024M环境下实测,单表1000万条记录的数据量(这张MySQL表拥有int、 datetime、varchar、text等类型的10多个字段,只有主键,无...

    MySQL数据类型和常用字段属性总结

    好比C++中,定义int类型需要多少字节,定义double类型需要多少字节一样,MySQL对表每个列中的数据也会实行严格控制,这是数据驱动应用程序成功的关键。M前言 好比C++中,定义int类型需要多少字节,定义double类型...

    sql使用cast进行数据类型转换示例

    您可能感兴趣的文章:详解SQL Server中的数据类型详解MySQL数据类型int(M)中M的含义mysql存储引擎和数据类型(二)Java数据类型与MySql数据类型对照表SQL Server数据类型转换方法SQL Server比较常见数据类型详解...

Global site tag (gtag.js) - Google Analytics