DDL语言(data define language)–库/表管理
- 数据定义语言(库和表)
-
库的管理
创建,修改,删除 -
表的管理
创建,修改,删除 -
创建:create
修改:alter
删除:drop#--------------------------------------一、库管理----------------------------------------- ## 1. 创建库 /* 语法: create database 库名; */ CREATE DATABASE IF NOT EXISTS books; ## 2. 修改库 /*不建议使用*/ # 更改库的字符集 ALTER DATABASE books CHARACTER SET utf8; ## 3. 库的删除 DROP DATABASE IF EXISTS books; #------------------------------------二、表的管理------------------------------------------- # 1. 创建表 /* create table 表名( 列名 列类型【(长度) 约束】, 列名 列类型【(长度) 约束】, 列名 列类型【(长度) 约束】, ...... ) */ CREATE TABLE book( id INT, bname VARCHAR(20), price DOUBLE, authorID INT, publishDate DATETIME ); DESC book; CREATE TABLE author( id INT, au_name VARCHAR(20), nation VARCHAR(10) ); DESC author; # 2. 表的修改 /* 语法:alter table book change|modify|add|drop column 列名 [列类型 约束] 1. 修改列名 2. 修改类型 3. 添加列 4. 删除列 5. 修改表名 */ ALTER TABLE book CHANGE COLUMN publishDate pubDate DATETIME; ALTER TABLE book MODIFY COLUMN pubDate TIMESTAMP; ALTER TABLE book ADD COLUMN annual DOUBLE; ALTER TABLE book DROP COLUMN annual; ALTER TABLE author RENAME TO book_author; DESC book; # 3. 表的删除 DROP TABLE IF EXISTS book_author; SHOW TABLES; #通用写法 DROP DATABASE IF EXISTS 旧库名; CREATE DATABASE 新库名; DROP TABLES IF EXISTS 旧表名; CREATE TABLES 新表名; # 4. 表的复制 INSERT INTO author VALUES (1,'村上春树','日本'), (2,'莫言','中国'), (3,'金庸','中国'), (4,'冯唐','中国'); SELECT * FROM author; ## 4.1复制表的结构 CREATE TABLE copy1 LIKE author; ## 4.2 复制结构和数据(涉及子查询) CREATE TABLE copy2 SELECT * FROM author; SELECT * FROM copy2; ## 4.3 只复制部分数据 CREATE TABLE copy3 SELECT id,au_name FROM author WHERE nation='中国'; SELECT * FROM copy3; ## 4.4 只复制部分结构 CREATE TABLE copy4 SELECT id,au_name FROM author WHERE 0; SELECT * FROM copy4;