MySQL DDL语言
#DDL语言
/*
数据定义语言
库和表的管理
一、库的管理
创建,修改,删除
二、表的管理
创建,修改,删除
创建:create
修改:alter
删除:drop
/
#一、库的管理
#1.库的创建
/
create database 库名
*/
#案例:创建库books
CREATE DATABASE IF NOT EXISTS books;
#2.库的修改 (一般不修改)
#案例:
RENAME DATABASE books TO book;#已不能用
#更改库的字符集
ALTER DATABASE books CHARACTER SET gbk;
#3.库的删除
DROP DATABASE IF EXISTS books;
#查看字符集
SHOW VARIABLES LIKE '%char%'
#二、表的管理
#1.表的创建
/*
create table 表名(
列名 列的类型(长度) 约束,
…
列名 列的类型(长度) 约束
)
*/
USE books;
CREATE TABLE book(
id INT,
bName VARCHAR(20),
price DOUBLE,
authorID VARCHAR(10),
publishDate DATETIME
);
DESC book;
CREATE TABLE author(
id INT,
au_name VARCHAR(20),
nation VARCHAR(10)
);
DESC author;
#2.表的修改
/*
1.列名
2.列的类型或约束
3.添加新列
4.删除列
5.修改表明
*/
ALTER TABLE book CHANGE COLUMN publishDate pubDate DATETIME;
ALTER TABLE book MODIFY COLUMN pubDate TIMESTAMP;
ALTER TABLE author ADD COLUMN annual DOUBLE;
ALTER TABLE author DROP COLUMN annual;
ALTER TABLE author RENAME TO book_author;
DESC book_author;
#3.表的删除
DROP TABLE 表名
#4.表的复制
CREATE TABLE 表名 LIKE 表名 #仅仅复制表的结构
CREATE TABLE 表名
SELECT * FROM 表名 #复制表的数据加结构
CREATE TABLE 表名
SELECT 列,。。
FROM 表名
WHERE 筛选条件 #只复制表的某些数据
CREATE TABLE 表名
SELECT 列,。。
FROM 表名
WHERE 0 #只复制表的某些字段