欢迎加入QQ讨论群258996829
麦子学院 头像
苹果6袋
6
麦子学院

mysql 学习之列类型以及属性特点详解

发布时间:2017-07-03 12:10  回复:0  查看:1913   最后回复:2017-07-03 12:10  

本文和大家分享的主要是mysql列类型及属性特点相关内容,一起来看看吧,希望对大家学习mysql有所帮助。

  整形列:

mysql 学习之列类型以及属性特点详解


一个字节有8个位,例如:int 类型的列存入数字100000000 00000000 00000000 00000001它就在最低位置上存入一个1,由此可见是极大的浪费资源,所以在建立列类型的时候,依实际情况而定。

  整型列的可选属性有:

  unsigned 非负

  zerofill 零填充 (MM表示固定宽度,它主要用于学号编码等,可以用0填至固定宽度。 注意:有零填充的列数据库默认为unsigned,即非负。

  例如:存入当前列数字1,固定宽度设置5,则存入数据库的数据显示为00001

  另一种情况如下:

  例如:如果没有零填充单纯的int(x)这种格式,x表示的是期望的宽度,(如 INT(4))。这个可选的宽度规格说明是用于在数值显示时,对某些值的宽度短于该列宽度的值进行左填补显示的,而不是为了限制在该列中存储值的宽度,也不是为了限制那些超过该列指定宽度的值的可被显示的数字位数,如果在一个整型列中存储一个超过显示宽度的更大值时,当 MySQL 为某些复杂的联结(join)生成临时表时,你可能会遇到问题,因为在这种情况下,MySQL 信任地认为所有的值均适合原始的列宽度。

  浮点列和定点列以及它们的区别:(都是存小数的)

  floatMD)两个参数,M表示小数的总位数,D小数点后是几位,例如:float5,2)最大存入999.99,最小存入-999.99

  double M,D)与float的区别是范围比float

  decimal float/double的区别主要是有精度损失,decimal更精确。decimal适合对数据要求比较严格的时候使用,比如涉及到钱。

  字符型列:M限制的是字符

  charM) 定长  M取值范围0~255

  varcharM)不定长0~65,535

mysql 学习之列类型以及属性特点详解

 一般开发过程中,M比较短果断选择charchar执行速度快。

  text 文本存储内容较大 其他文本类型可查看mysql手册,blob不需要考虑字符集存二进制时使用。

  enum 是定义好值,也就是取值范围。例如:性别。

  set 集合型 可以选其中的一个或多个。

  日期时间类型列:

  year

  date

  time

  datetime

  一般存入数据库用的是unigx时间戳。

 

来源:博客园


您还未登录,请先登录

热门帖子

最新帖子