视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
mysql数据类型和用法
2020-11-09 08:30:57 责编:小采
文档

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 MySQL支持多种列类型:数值类型、日期/时间类型和字符串(字符)类型。本章首先对这些列类型进行了概述,然后更加详细地描述了各种列的类型,以及列类型存储需求的总结。概述很简单。关于具体列类型

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  MySQL支持多种列类型:数值类型、日期/时间类型和字符串(字符)类型。本章首先对这些列类型进行了概述,然后更加详细地描述了各种列的类型,以及列类型存储需求的总结。概述很简单。关于具体列类型的详细信息应查阅详细的描述,例如指定值时允许使用的格式。

  MySQL支持处理空间数据的扩展名。

  几种列类型描述使用了下述惯例:

  M:表示最大显示宽度。最大有效显示宽度是255.

  M指示最大显示宽度。最大有效显示宽度是255.显示宽度与存储大小或类型包含的值的范围无关。

  D:适用于浮点和定点类型,并表示小数点后面的位数。最大可能的值是30,但不应大于M-2.

  方括号('['和']')表示可选部分。

  如果为一个数值列指定ZEROFILL,MySQL自动为该列添加UNSIGNED属性。

  SERIAL是BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE的一个别名。

  在整数列定义中,SERIAL DEFAULT VALUE是NOT NULL AUTO_INCREMENT UNIQUE的一个别名。

  BIT[(M)]

  位字段类型。M表示每个值的位数,范围为从1到.如果M被省略,默认为1.

  TINYINT[(M)] [UNSIGNED] [ZEROFILL]

  很小的整数。带符号的范围是-128到127.无符号的范围是0到255.

  BOOL,BOOLEAN

  是TINYINT(1)的同义词。zero值被视为假。非zero值视为真。

  INT[(M)] [UNSIGNED] [ZEROFILL]

  普通大小的整数。带符号的范围是-21474838到21474837.无符号的范围是0到4294967295.

  BIGINT[(M)] [UNSIGNED] [ZEROFILL]

  大整数。带符号的范围是-9223372036854775808到9223372036854775807.无符号的范围是0到18446744073709551615.

  作为SQL标准的扩展,MySQL也支持整数类型TINYINT、MEDIUMINT和BIGINT.下面的表显示了需要的每个整数类型的存储和范围。

  类型

  字节

  最小值

  最大值

  (带符号的/无符号的)

  (带符号的/无符号的)

  TINYINT

  1

  -128

  127

  0

  255

  SMALLINT

  2

  -32768

  32767

  0

  65535

  MEDIUMINT

  3

  -8388608

  8388607

  0

  16777215

  INT

  4

  -21474838

  21474837

  0

  4294967295

  BIGINT

  8

  -9223372036854775808

  9223372036854775807

  0

  18446744073709551615

  CHAR和VARCHAR类型

  CHAR和VARCHAR类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。

  CHAR和VARCHAR类型声明的长度表示你想要保存的最大字符数。例如,CHAR(30)可以占用30个字符。

  CHAR列的长度固定为创建表时声明的长度。长度可以为从0到255的任何值。当保存CHAR值时,在它们的右边填充空格以达到指定的长度。当检索到CHAR值时,尾部的空格被删除掉。在存储或检索过程中不进行大小写转换。

  VARCHAR列中的值为可变长字符串。长度可以指定为0到65,535之间的值。(VARCHAR的最大有效长度由最大行大小和使用的字符集确定。整体最大长度是65,532字节)。

  同CHAR对比,VARCHAR值保存时只保存需要的字符数,另加一个字节来记录长度(如果列声明的长度超过255,则使用两个字节)。

  VARCHAR值保存时不进行填充。当值保存和检索时尾部的空格仍保留,符合标准SQL.

  如果分配给CHAR或VARCHAR列的值超过列的最大长度,则对值进行裁剪以使其适合。如果被裁掉的字符不是空格,则会产生一条警告。如果裁剪非空格字符,则会造成错误(而不是警告)并通过使用严格SQL模式禁用值的插入。参见5.3.2节,"SQL服务器模式".

[1] [2]

下载本文
显示全文
专题