#一、创建表
/* 语法
create table 表名(
列名 列的类型【(长度)约束】,
列名 列的类型【(长度)约束】,
列名 列的类型【(长度)约束】,
...
列名 列的类型【(长度)约束】
)
*/
#案例:创建表book
CREATE TABLE book (
id INT,#编号
bname VARCHAR(20),#书名
bprice DOUBLE,#价格
authorID INT,#作者
publishdate DATETIME#出版日期
);
CREATE TABLE IF NOT EXISTS book ( #容错处理
id INT,#编号
bname VARCHAR(20),#书名
bprice DOUBLE,#价格
authorID INT,#作者
publishdate DATETIME#出版日期
);
DESC book;
CREATE TABLE author(
id INT,
au_name VARCHAR(20),
nation VARCHAR(20)
);
DESC author;
#二、表的修改
/*语法
alter table 表名 add|drop|change|modify column 列名【类型 约束】;
*/
-- 修改列名(可以顺带改类型)
ALTER TABLE book CHANGE COLUMN publishdate pubdate DATETIME;
-- 修改列的类型或约束
ALTER TABLE book MODIFY COLUMN pubdate TIMESTAMP;
-- 添加列
ALTER TABLE author ADD COLUMN salsry DOUBLE;
-- 删除列
ALTER TABLE author DROP COLUMN nation;
DESC book;
DESC author;
-- 修改表名
ALTER TABLE author RENAME TO book_author;
#三、表的删除
DROP TABLE book_author;
-- DROP TABLE if exists book_author; 容错处理(仅适用于库和表)
SHOW TABLES;
#通用写法---先删再创建
drop database if exists 旧库名;
create database 新库名;
DROP TABLE IF EXISTS 旧表名;;
CREATE TABLE 新表名;
#四、复制表
INSERT INTO author VALUES
(1,'村上春树','日本'),
(2,'莫言','中国'),
(3,'三毛','中国台湾'),
(4,'莫泊桑','法国');
SELECT * FROM author;
SELECT * FROM copy;
#1、仅复制表的结构
CREATE TABLE copy LIKE author;
#2、复制表的结构和数据
CREATE TABLE copy2
SELECT * FROM author;
SELECT * FROM copy2;
#3、复制部分数据
CREATE TABLE copy3
SELECT id,au_name
FROM author
WHERE nation='中国台湾';
SELECT * FROM copy3;
#4、复制部分结构
CREATE TABLE copy4
SELECT id,au_name
FROM author
WHERE 1=2; #1=2成立的时候复制select列的值
SELECT * FROM copy4;
哈喽小海豚~
最新推荐文章于 2022-09-13 13:46:37 发布