DDL语言:数据库定义语言,操作数据库对象的,例如数据库对象:表,表中有列有行(行:数据记录;列:属性)
Create 创建对象:
- create database 数据库名; --创建数据库
show database; --显示数据库情况
2. create table 表名(列名1 数据类型(size),
列名2 数据类型(size),
列名3 数据类型(size),
…
); --创建表
Select * from 表名; --查看表中所有的数据信息
Desc 表名; --查看表结构,即表中列的信息
Alter 修改,改变表
- alter table 表名 add(列名1 数据类型(size),
列名2 数据类型(size),
列名3 数据类型(size),
……); ---增加列
2. 改列:一般是用来修改列的取值范围,modify
(如果需要修改列的名称,则使用change,使用需谨慎)
修改列的取值范围,扩大存储范围:
Alter table 表名 modify 列名 float(m,n);
修改列的数据类型:
Alter table 表名 modify 列名 varchar/char(n);
修改列名;
Alter table 表名 change 列名 新列名 char/varchar(n);
修改表的名字;
Alter table 表名 rename 新表名;
删除列:
Alter table 表名 drop 列名;
Drop 删除数据库对象
1、drop table 表名; ---删除表(谨慎使用,删除之前必须备份)
2、drop database 数据库名; ---删除数据库(没有授权,禁止使用)
*delete删除的是表中的数据,删除的时候是一条一条删除的,即使不加查询条件,对标结构也没影响;Drop删除的是表结构和表数据(即整体全部删除)
Drop删除的比delate效率高
约束:
用来限制什么样的数据可以进入表中,什么样的数据无法写入,直接影响的是DML语句的执行
约束一般建议在创建表的时候创建上去,约束都是添加在列上面
- 非空约束:添加了非空约束则这一列的值不可为空值null,即插入数据时null无法写入 --not null 如:身份证、姓名、电话等
2. 唯一约束:添加唯一约束则次列的值必须唯一,不可与该列其他值重复,但可以为空值 --unique
即 这个列可以没有值 为null,但如果有值 必须唯一不可重复
3. 主键约束:是非空约束和唯一约束的集合,即该列既不可为空也不能重复
--primary key;
用主键作为查询条件时,有且只有一条结果显示。
4. 外键约束,即完整性约束:涉及两个表,一个子表一个父表,两个表之前存在继承和从属关系
如果子表中一个列添加了外键约束,则这个列的值必须要在父表中先存在,即子表的数据要在父表中能找到,数据一般都是编号,不会将名称作为外键
Foreign key (字表中的列) references (父表中的列);