SQL建表+约束

建表:表是数据库中最重要的逻辑对象,是存储数据的主要对象。MySQL的数据类型包括数值类型、日期和时间类型和字符串类型等。

数据类型:
     BIT          (位字段类型,取值范围是1~64,默认为1)
	 TINYINT       (很小的整数类型。带符号的范围是-128~127,无符号的范围是0~255)
	 BOOL,BOOLEAN	布尔类型,是TINYINT(1)的同义词。zero值被视为假。非zero值被视为真
	 SMALLINT	小的整数类型,带符号的范围是-32768~32767。无符号的范围是0~65535
	 MEDIUMINT	中等大小的整数类型。带符号的范围是-8388608~8388607,无符号的范围是0~16777215
	 INT	        普通大小的整数类型。带符号的范围是-2147483648~2147483647,无符号的范围是0~4294967295
	 INTEGER	与INT的含义相同
     BIGINT	        大整数类型,带符号的范围是-9223372036854775808~9223372036854775807。无符号的范围是0~18446744073709551615
     FLOAT	        单精度浮点类型
     DOUBLE	        双精度浮点类型
     DECIMAL	定点数类型
     DEC	        与DECIMAL的含义相同


日期和时间类型:
				   DATE	日期类型,例如'2012-01-01'
                   DATETIME	日期和时间类型,例如'2012-01-01 12:00:00'
                   TIMESTAMP	时间戳类型,TIMESTAMP列用于INSERT或UPDATE操作时记录日期和时间
                   TIME	时间类型
                   YEAR	两位或四位的年份类型,默认为四位年份类型

字符串类型: 
                CHAR(M)	固定长度字符串,M为存储长度
                VARCHAR(M)	可变长度的字符串,M为最大存储长度,实际存储长度为输入字符的实际长度
                BINARY(M)	BINARY类型类似于CHAR类型,但保存二进制字节字符串而不是非二进制字符串。M为存储长度
                VARBINARY(M)	VARBINARY类型类似于VARCHAR类型,但保存二进制字节字符串而不是非二进制字符串。M为存储长度
                BLOB	二进制大对象,包括TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB 等4种BLOB类型
                TEXT	大文本类型,包括TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT等4种TEXT类型
                ENUM	枚举类型
                SET	集合类型

MySQL特殊字符序列:
                    \"	双引号(")
                     \'	单引号(')
                     \\	反斜杠(\)
                     \n	换行符
                     \r	回车符
                     \t	制表符
                     \0	ASCII 0 (NUL) 字符
                     \%	%字符
                     \_	_字符
                     \b	ASCII 8 退格符



约束:
      Constraint,是定义表上的一种强制规则(当为某个表定义约束后,对该表做的所有SQL操作都必须满足约束的规则要求,否则操作将失败。)	      NOT NULL,非空约束,指定某列的所有行数据不能包含空值
      UNIQUE,唯一性约束,指定列或者列的组合的所有行数据必须唯一
      PRIMARY KEY 主键约束,表的每行的唯一性标志,指定列或者列的组合的所有行数据必须唯一
      FOREIGN KEY 外键约束,在列及引用列上建立的一种强烈依赖关系
      CHECK 检查性约束,在列上指定一个必须满足的条件

你可能感兴趣的:(SQL建表+约束)