当前位置:Gxlcms > mysql > 与MSSQL对比学习MYSQL的心得(二)--显示宽度

与MSSQL对比学习MYSQL的心得(二)--显示宽度

时间:2021-07-01 10:21:17 帮助过:28人阅读

我们先来看看整数型数据类型的宽度范围

创建一个表

代码如下:

CREATE TABLE tb_emp( id BIGINT(1))

id字段的数据类型为BIGINT(1),注意到后面的数字1,这表示的是该数据类型指定的显示宽度,指定能够显示的数值中数字的个数。

例如,假设声明一个INT类型的字段 YEAR INT(4)

该声明指明,在year字段中的数据一般只显示4位数字的宽度。

在SQLSERVER里是会报错的

代码如下:

CREATE TABLE abc
(id INT(11))

代码如下:

消息 2716,级别 16,状态 1,第 1 行
第 1 个列、参数或变量: 不能对数据类型 int 指定列宽。

显示宽度和数据类型的取值范围是无关的。显示宽度只是指明MYSQL最大可能显示的数字个数,数值的位数小于指定的宽度时会有空格填充

如果插入了大于显示宽度的值,只要该值不超过该类型整数的取值范围,数值依然可以插入,而且能显示出来。

例如,向year字段插入一个数值19999,当使用select查询的时候,MYSQL显示的将是完整带有5位数字的19999,而不是4位数字的值

如果不指定显示宽度,则MYSQL为每一种类型指定默认的宽度值

tips:显示宽度只用于显示,并不能限制取值范围和占用空间,例如:INT(3)会占用4个字节的存储空间,并且允许的最大值也不会是999,而是INT整型所允许的最大值。

您可能感兴趣的文章:

  • mysql如果数据不存在,则插入新数据,否则更新的实现方法
  • mysql 存在该记录则更新,不存在则插入记录的sql
  • MySQL 在触发器里中断记录的插入或更新?
  • mysql 记录不存在时插入 记录存在则更新的实现方法
  • 与MSSQL对比学习MYSQL的心得(七)--查询
  • 与MSSQL对比学习MYSQL的心得(六)--函数
  • 与MSSQL对比学习MYSQL的心得(五)--运算符
  • 与MSSQL对比学习MYSQL的心得(四)--BLOB数据类型
  • 与MSSQL对比学习MYSQL的心得(三)--查看字段的长度
  • 与MSSQL对比学习MYSQL的心得(一)--基本语法
  • 与MSSQL对比学习MYSQL的心得(八)--插入 更新 删除

人气教程排行