2015-09-18
  • 作者:tomfans
  • 本文地址:http://f-olivia.github.io/database/2015/09/18/mysql/
  • 转载请注明出处

###目录: 本次学习依据mysql版本:Server version: 5.6.23-log MySQL Community Server (GPL)

  1. 概述
  2. 字符串类型
  3. 数值类型
  4. 日期和时间类型
  5. 应用场景

#####一、概述 如目录中所列,字符串(string type)、数值(numeric type)、日期与时间(date and time type)

1 字符串(string type):依据标准SQL(92,99,2003等)

1) 固定长度(Fixed-width)
* CHARACTER(length)
* CHAR(length)

2) 可变长度(Variable-length)
* CHARACTER VARYING(length)
* CHAR VARYING(length)
* VARCHAR(length)

但,SQL2003中有关大数据对象类型,mysql中是没有的,如:

* CHARACTER LARGE OBJECT
* CHAR LARGE OBJECT
* CLOB

接下来,mysql支持以下类型:

3)二进制(BINARY)和可变长度二进制(VARBINARY)
4)二进制大对象(BLOB)和文本大对象(text)
5)枚举型(ENUM)
6)SET字符串对象

2 数值(numeric type):支持标准SQL2003所有数值类型

1) 整型(interger data)
* TINYINT
* SMALLINT
* MEDIUMINT
* INT
* BIGINT

2)浮点型(floating-point)
* FLOAT
* DOUBLE

3)固定宽度(a fixed-point)
* DECIMAL
* NUMERIC

4)BIT型
* BIT

SQL2003的数值类型有以下:

1)精确数值类型(Exact numeric)
* NUMERIC(g,f)
* DECIMAL(g,f) -(DEC)
* SMALLINT
* INTEGER(INT)
* BIGINT

2)近似值类型(Approximate numeric)
* FLOAT(p)
* REAL
* DOUBLE PRECISION

3)扩充了一些
* TINYINT
* MEDIUMINT
* BIT(x)
* SERIAL
	>>(BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE KEY)

3 日期与时间(date and time type)

1)DATETIME
2)DATE
3)TIME
4)YEAR
5)TIMESTAMP
6)Zero

与SQL2003标准有所不同

1)DATE
2)TIME(p),其中p代表精度
3)TIMESRAMP(p),--[WITH|WITHOUT] TIME ZONE可以带时区


blog comments powered by Disqus