创建,修改,删除表
1.创建表
1.1:语法:CREATE TABLE 表名 (属性名 数据类型 [完整性约束条件],
属性名 数据类型 [完整性约束条件],
属性名 数据类型 [完整性约束条件]
);
完整性约束条件
约束条件 | 说明 |
PRIMARY KEY | 标识该属性为该表的主键,可以唯一的标识对应的元组 |
FOREIGN KEY | 标识该属性为该表的外键,是与之联系的某表的主键 |
NOT NULL | 标识该属性不能为空 |
UNQUE |
标识该属性的值是唯一的 |
AUTO_INCREMENT | 标识该属性的值自动增加 |
DEFAULT | 为该属性设置默认值 |
1.2 应用:创建一个表明为test001的表;
2.1 设置表的主键
2.1 语法:属性名 数据类型 PRIMARY KEY 或 PRIMARY KEY (属性名1,属性名2,.....,属性名n)
2.1 应用1:在student表中,设置stu_id为主键;
2.2 应用:teacher表中有两个主键(tea_id,course_id)
3.设置表的外键
3.1 语法:
CONSTRAIND 外键别名 FOREIGN KEY (属性1,属性2,.......,属性n)
PEFERENCES 表明(属性1,属性2,.......,属性n)
3.2 应用:创建object表,设置id为teacher表中course_id的外键;
4.设置表的非空约束,唯一性约束,自动增加,默认值;
4.1 语法:属性名 数据类型 NOT NULL UNIQUE AUTO_INCREMENT DEFAULT 默认值
4.2 应用:创建表srore ,其中id为主键,每插入一条新纪录id的值为自动增加,stu_id是唯一值,该字段不能重复,stu_num是student表中stu_id的外键,name字段是没空字段,English,Math,Compter默认0
5.查看表结构
语法:1.DESCRIBE 表名 2.DESC 表名 3.SHOW CREATE TABLE 表名
6.修改表
6.1 修改表名
6.1.1 语法:
ALTER TABLE 旧表名 RENAME [TO] 新表名
6.1.2 修改student表为user表
6.2 修改数据类型
6.2.1:语法:
ALTER TABLE 表名 MODIFY 属性名 数据类型;
6.2.2:应用:sroce表中id的数据类型改成int(20);
6.3 修改字段名和数据类型
6.3.1 语法
ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型;
6.3.2 应用:把score表中,name字段改为stu_name,数据类型VARCHAR(32)
6.4 增加字段
6.4.1 语法:
ALTER TABLE 表名 ADD 属性名1 数据类型 [完整性约束条件] [FIRST | AFTER 属性名2
6.4.2 应用:在score第一个字段增加一个TIME DATETIME NOT NULL
6.4.3 应用:在stu_name后新增Chinese默认0
6.5 删除字段
6.5.1 语法:
ALTER TABLE 表名 DROP 属性名;
6.5.2 应用:删除score表中的Math字段
6.6 修改字段的排序
6.6.1 语法
ALTER TABLE 表名 MODIFY 属性名 数据类型 FIRST | AFTER 属性名
6.6.2 应用
1.把score表中的stu_name 放在表的第一个位置
2.把score表中time字段放在stu_num之后
6.7 删除表的外键约束
6.7.1 语法
ALTER TABLE 表名 DROP FOREIGN KEY 外键别名;
6.7.2 应用:删除表objcet的外键约束
6.8 删除表
6.8.1:语法
DROP TABLE 表名;
6.8.2:应用:删除object表
6.8.3:注:要删除被其他表关联的父表,应先删除外键约束,在删除表;