SQL——数据定义DDL

使⽤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 <name>;

# 创建数据库,当指定名称的数据库不存在时执⾏创建
create database if not exists <name>;

# 创建数据库的同时指定数据库的编码格式(utf8 gbk)
create database <name> character set utf8;

1.2 查询数据库——show

# 显示当前mysql中的数据库列表
show databases;
# 显示指定名称的数据的创建的SQL指令
show create database <name>;

1.3 修改数据库——alter

# 修改数据库的字符集 # utf8 gbk
alter database <name> character set utf8; 

1.4 删除数据库——drop 

# 删除数据库
drop database <name>;
# 若数据库存在则删除数据库
drop database is exists <name>;

1.5 使用or切换数据库——use

use <name>;

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 <name>

2.3 删除数据表——drop

drop table <name>;

# 当数据表存在时删除数据表
drop table if exists <name>;

2.4 修改数据表——alter

# 修改表名
alter table <name> rename to <new_name>;
# 数据表也是有字符集的,默认字符集和数据库⼀致
alter table <mame> character set utf8;
# 添加列(字段)
alter table <name> add <column_name> varchar(200);
# 修改列(字段)的列表和类型
alter table <name> change <old_Column_name> <new_Cloumn_ame> <type>;
# 只修改列(字段)类型
alter table <name> modify <column_name> <new_Type>;
# 删除列(字段)
alter table <name> drop <column_name>;

posted @ 2023-04-04 23:23  小平凡的记录  阅读(18)  评论(0编辑  收藏  举报  来源