所谓创建数据表,指的就是在已经创建好的数据库中建立新表。创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性(实体完整性,引用完整性,域完整性)约束的过程。
1.创建数据表:
注意:数据表属于数据库,在创建数据表之前应该先使用“use <数据库名>”指定操作在哪个数据库中进行。
CREATE TABLE<表名> //表名不区分大小写,但不能使用SQL语言中关键字
(
字段名1,数据类型[列级别约束条件](默认值),
字段名2,数据类型[列级别约束条件](默认值),
......
[表级别约束条件]
);
2.使用主键约束:
主键又称主码,是表中一列或多列的组合。主键约束要求主键列的数据唯一,并且不能为空。主键能够惟一地标识表中的一条记录,加快了数据库查询的速度,主键和记录之间是一一对应的,主键分为两种类型:单字段主键和多字段主键。
- 单字段主键:
字段名 数据类型 PRIMARY KEY [默认值]
- 多字段联合主键:
PRIMARY KEY [字段1,字段2,...字段n]
3.使用外键约束:
外键用来在两个表的数据之间建立链接,可以是一列或者多列。一个表可以有一个或多个外键。外键的主要作用是保证数据引用的完整性,定义外键后不允许删除在另一个表中具有关联关系的行。(子表的外键必须关联父表的主键,且关联字段的数据类型必须匹配)
[CONSTRAINT <外键名>]FOREIGN KEY 字段名1[,字段名2,...]
REFERENCES<主表名> 主键列1[,主键列2....]
4.使用非空约束:
非空约束指字段的值不能为空。
字段名 数据类型 NOT NULL
5.使用唯一性约束:
字段名 数据类型 UNIQUE
“unique”和”primary key”的区别:一个表中可以有多个字段声明为unique,但只能有一个primary key声明;声明为primary key 不可以有空值,但声明为unique字段允许有空值。
6.使用默认约束:
字段名 数据类型 DEFAULT 默认值
7.设置表的属性值自动添加:
字段名 数据类型 AUTO_INCREMENT
8.查看所有数据表:
SHOW TABLES; //显示某数据库中所有的数据表
9.查看表结构:
DESCRIBE 表名; //或者简写为:DESC 表名;
10.查看表详细结构:
SHOW CREATE TABLE <表名\G>
11.修改表名:
ALTER TABLE <旧表名> RENAME <新表名>;
12.修改字段的数据类型:
ALTER TABLE <表名> MODIFY<字段名> <数据类型>; //字段名为要修改的字段,数据类型为修改后新的
13.修改字段名:
ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>;
14.添加字段:
ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] [FIRST|AFTER 已存在字段名]
注:”first”是在表的第一列添加字段;”after 已存在字段名” 是在指定位置后面添加字段。//若是要修改字段的排列位置,则是把ADD换成MODIFY即可。
15.删除字段:
ALTER TABLE <表名> DROP <字段名>;
16.删除表的外键约束:
ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>;
17.删除没有被关联的表:
DROP TABLE [IF EXIST] 表1,表2....;
18.删除被其他表关联的表:
ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>; //先删除关联子表的外键约束
DROP TABLE 表1,表2,....;