#DDL
/*
数据定义语言
库和表的管理
一、库的管理
创建、修改、删除
二、表的管理
创建、修改、删除
创建: create
修改: alter
删除: drop
*/
1.库的创建
/*
语法:
create database [if not exists]库名;
*/
#案例:创建库Books
CREATE DATABASE IF NOT EXISTS books ;
2.库的修改
语法:修改库名
RENAME DATABASE 旧库名 TO 新库名;
库名修改语法现在已经停止,无法修改,只能手动在后台更改文件名
语法:修改字符集
ALTER DATABASE 库名 CHARACTER SET gbk;
3.库的删除
语法:DROP DATABASE IF EXISTS 库名;
DROP DATABASE IF EXISTS books;
首先把刚才的books库创建出来
1.表的创建
语法:
create table 表名(
列名 列的类型【(长度) 约束】,
列名 列的类型【(长度) 约束】,
列名 列的类型【(长度) 约束】, …
列名 列的类型【(长度) 约束】
)
#长度和约束可选
#案例:创建表Book
CREATE TABLE book(
id INT,#编号
bookname VARCHAR(50),#书名最大20个字符
price DOUBLE,#价格
authorID INT,#作者编号
publishDate DATETIME#出版日期
);
DESC book;#查看表结构
#案例:创建表author
CREATE TABLE IF NOT EXISTS author(
id INT,
au_name VARCHAR(20),
nation VARCHAR(10)
);
DESC author;
2.表的修改
/*
语法
alter table 表名 add|drop|modify|change column 列名 【列类型 约束】;
*/
add:添加
drop:删除
modify:修改
change:改变
#①修改列名
ALTER TABLE 表名 CHANGE COLUMN 旧列名 新列名 新列名类型;
…
其中COLUMN可以省略
ALTER TABLE book CHANGE COLUMN publishdate pubDate DATETIME;
#②修改列的类型或约束
ALTER TABLE表名 MODIFY COLUMN 列名 新的类型或约束;
MODIFY:修改
ALTER TABLE book MODIFY COLUMN pubdate TIMESTAMP;
#③添加新列
ALTER TABLE 表名 ADD COLUMN 列名 类型;
#④删除列
ALTER TABLE 表名 DROP COLUMN 列名;
#⑤修改表名
ALTER TABLE 表名 RENAME TO 新表名;
#通用的写法:
DROP TABLE IF EXISTS 旧表名;
一般创建表或数据库时都是先删一面。再创建。
SHOW TABLES; #查看当前库的所有表
先插入数据
#1.仅仅复制表的结构
CREATE TABLE 新表名 LIKE 已存在表名;
CREATE TABLE copy LIKE author;
books数据库里有啦copy表,copy表只有结构,没有数据
#2.复制表的结构+数据
CREATE TABLE 新表名
SELECT * FROM 已存在表名;
就是在复制表的结构时后面加上一个子查询。
CREATE TABLE copy2
SELECT * FROM author;
SELECT * FROM copy2;
#只复制部分数据
就是在复制表的结构时后面加上一个子查询。子查询添加筛选条件
CREATE TABLE copy3
SELECT id,au_name
FROM author
WHERE nation='中国';
电气专业的计算机萌新,写博文不容易。如果你觉得本文对你有用,请点个赞支持下,谢谢。