# 表的管理
#一、表的创建
/*
语法:
create table 【if not exists】 表名(
列名 列的类型【(长度) 列的约束】,
列名 列的类型【(长度) 列的约束】,
列名 列的类型【(长度) 列的约束】,
.....
列名 列的类型【(长度) 列的约束】
)
*/
#案例:创建book表
-- CREATE TABLE book(
-- id INT,
-- bname VARCHAR(20),
-- price DOUBLE,
-- authorId INT,
-- publishDate VARCHAR(20)
-- );
#二、表的修改
/*
alter table 表名 add|drop|modify|change column 列名 【列类型 约束】
*/
#①修改列
# 语法: alter 表名 change column 旧列名 新列名 类型
#案例:修改列名为publishdate 修改成puDate
-- alter table book change column publishdate puDate VARCHAR(20);
#②修改列的类型或约束
# 语法: alter 表名 modify column 列名 新类型
-- alter table book modify column puDate timestamp;
#③添加列
#语法:alter table 表名 add column 新列名 新列的类型;
-- alter table book add column annual DOUBLE;
#④删除列
#语法:alter table 表名 drop column 要删除的列名;
-- alter table book drop column annual;
#⑤修改表名
#语法:alter table 旧表名 rename to 新表名;
-- alter table bookkkk rename to book;
#查看表的属性
-- DESC book;
#三、表的删除
-- drop table 【if exists】 表名;
#查看有那些表
-- SHOW TABLES;
#建库的通用写法
-- DROP DATABASE IF EXISTS 旧库名;
-- CREATE DATABASE 新库名;
#建表的通用写法
-- DROP TABLE IF EXISTS 旧表名;
-- CREATE TABLE 新表名;
#四、表的复制
#1.1仅仅复制表的结构(所有列)
#语法:create table 新表名 like 旧表名
-- CREATE table book_cp_struc LIKE book;
#1.2仅仅复制表的结构(指定列)
#语法:create table 新表名 select 列名1,列名2,... FROM 旧表 where 0;
-- CREATE table book_cp_struc
-- SELECT id,bname
-- FROM book
-- WHERE 0;
#2.复制表的结构和内容 (可以自定义select中的内容,指定复制表中的部分)
#语法:create table 新表名 select * from 旧表名;
-- CREATE TABLE book_cp_struc_cont
-- SELECT * FROM book;
SELECT * FROM book ;