使⽤DDL语句可以创建、查询、修改、删除数据库、数据表。
目录
1 DDL数据库操作
1.1创建数据库——create
1.2查询数据库——show
1.3 修改数据库——alter
1.4 删除数据库——drop
1.5 使用or切换数据库——use
2 DDL数据表操作
2.1 创建数据表——create
2.2 查询表结构——desc
2.3 删除数据表——drop
2.4 修改数据表——alter
1 DDL数据库操作
1.1创建数据库——create
create database ;# 创建数据库,当指定名称的数据库不存在时执⾏创建create database if not exists ;# 创建数据库的同时指定数据库的编码格式(utf8 gbk)create database character set utf8;
1.2查询数据库——show
# 显示当前mysql中的数据库列表show databases;# 显示指定名称的数据的创建的SQL指令show create database ;
1.3 修改数据库——alter
# 修改数据库的字符集 # utf8 gbkalter database character set utf8;
1.4 删除数据库——drop
# 删除数据库drop database ;# 若数据库存在则删除数据库drop database is exists ;
1.5 使用or切换数据库——use
use ;
2 DDL数据表操作
2.1 创建数据表——create
CREATE TABLE ( [列级完整性约束定义]{, [列级完整性约束定义]… }[, 表级完整性约束定义 ] );
在列级完整性约束定义处可定义的约束
- NOT NULL:限制列取值非空(只能列级:从图形化方式就能看出)。
- DEFAULT:给定列的默认值(只能列级:从图形化方式就能看出)。
- UNIQUE:限制列取值不重。
- CHECK:限制列的取值范围。
- PRIMARY KEY:指定本列为主码。若在表级完整性约束处定义主码,PRIMARY KEY之后,必须将主码列用括号括起来,即: PRIMARY KEY(列1{[,列2 ] …})
- FOREIGN KEY:定义本列为引用其他表的外码。若在表级完整性约束处定义外码,则 “FOREIGN KEY ()”部分不能省。
- NOT NULL和DEFAULT只能是列级完整性约束(设置时在列后及列属性中); 其他约束均可在表级完整性约束处定义。
create table Student( S_num char(7) primary key, S_name char(10) not null, S_sex char(2) , S_age tinyint , S_dept char(20));
2.2 查询表结构——desc
desc
2.3 删除数据表——drop
drop table ;# 当数据表存在时删除数据表drop table if exists ;
2.4 修改数据表——alter
# 修改表名alter table rename to ;# 数据表也是有字符集的,默认字符集和数据库⼀致alter table character set utf8;# 添加列(字段)alter table add varchar(200);# 修改列(字段)的列表和类型alter table change ;# 只修改列(字段)类型alter table modify ;# 删除列(字段)alter table drop ;