MySql库和表的管理(创建、修改、删除、复制)

DDL :数据定义语言,库和表的管理
创建 : create
修改 : alter
删除 : drop

一、库的管理
1. 库的创建

语法

create databaseif not exists】库名;
  1. 创建库 books
create database if not exists books ;	//如果不存在该库就创建(容错性)
2. 库的修改
  1. 修改库
rename database 原库名 to 新库名;	//现在不允许修改,可找到库路径,对库名进行修改
  1. 更改库的字符集
alter database books character set gbk;	//创建时一般是默认 utf-8 字符集
3. 库的删除
  1. 删除库
drop databaseif exists】 库名;	//如果存在该库就删除
二、表的管理
1. 表的创建

语法:

create tableif not exists] 】表名(
	列名 列的类型【(长度) 列的约束】,
	列名 列的类型【(长度) 列的约束】,
	....
	列名 列的类型【(长度) 列的约束】
)
  1. 创建book表
create table book(
	id int,	#编号
	bName varchar(20),	#名字
	price double,	#价格
	authorId int,	#作者编号
	publishDate datetime #出版日期
);
  1. 创建author表
create table author(
	id int,
	au_name varchar(20),
	nation varchar(10)
);
2. 表的修改

语法:

alter table 表名 add | drop | modify | change | column 【列名、列类型 、约束】

① 修改列名
② 修改列的类型或约束
③ 添加新列
④ 删除列
⑤ 修改表名

  1. 修改列名
//将book表中的 publishdate 列修改成 pubDate 
alter table book change column publishdate pubDate datetime;	
  1. 修改列的类似或约束
//将book表中的 pubDate 的类型修改成 timestamp
alter table book modify column pubDate timestamp;
  1. 添加新列
//在author表中增加一列 年薪
alter table author add column annual double;
  1. 删除一列
//在author表中删除一列 年薪
alter table author drop column annual;
  1. 修改表名
alter table author rename to book_author;
3. 表的删除
  1. 删除表;
drop tableif exists】 表名 ; //如果存在就删除

新建库通用写法

drop database if exists 旧库名;
create database 新库名;
drop table if exists 旧表名;
create table 表名();
4. 表的复制
  1. 仅仅复制表的结构(可以跨库复制表)
create table 新表名 like 被复制的表名;
  1. 复制表的结构和表中全部数据
create table 新表名 select * from 被复制的表名;
  1. 复制表的结构和表中的部分数据
create table 新表名 select id,au_name from 被复制的表名 where nation = "中国";
  1. 仅仅复制表的某些字段
create table 新表名 select id,au_name from 被复制的表名 where 0;

猜你喜欢

转载自blog.csdn.net/weixin_38739598/article/details/107144105