数据定义语言 库和表的管理 一、库的管理 创建、修改、删除 二、表的管理 创建、修改、删除 创建: create 修改: alter 删除: drop
1、库的管理
#1、库的创建 CREATE DATABASE IF NOT EXISTS books; #2、库的修改 更改库的字符集(utf8) ALTER DATABASE course CHARACTER SET utf8; #3、库的删除 DROP DATABASE IF EXISTS(库名);
2、表的管理
①表的创建 ★
/* create table if not exists 表名( 列名 列的类型【(长度) 约束】, 列名 列的类型【(长度) 约束】, 列名 列的类型【(长度) 约束】, ... 列名 列的类型【(长度) 约束】 ); */ CREATE TABLE IF NOT EXISTS book( id INT, bName VARCHAR(20), price DOUBLE, authorId INT, publishDate DATETIME ); CREATE TABLE author( id INT, au_name VARCHAR(20), nation VARCHAR(10) );
②表的修改
/* 语法: alter table 表名 add|drop|modify|change column 列名 【列类型 约束】; */ #①修改列名 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;
③表的删除
DROP TABLE IF EXISTS 表名; #通用的写法: DROP DATABASE IF EXISTS 旧库名; CREATE DATABASE 新库名; DROP TABLE IF EXISTS 旧表名; CREATE TABLE 新表名; 注意: EXISTS 只有在创建库和表,或者删除库和表时使用。
④表的复制
INSERT INTO book_author VALUES(1,'村上春树','日本'), (2,'金庸','中国'), (3,'冯唐','中国'); ##1、仅仅复制表的结构 CREATE TABLE copy LIKE book_author; ##2、复制表的结构➕数据 CREATE TABLE copy2 SELECT * FROM book_author; ##3、复制部分数据 CREATE TABLE copy3 SELECT id,au_name FROM book_author WHERE nation='中国'; ##4、仅仅复制部分字段 CREATE TABLE copy4 SELECT id,au_name FROM book_author WHERE 0;