Chapter 12 .庫和表的管理

weixin_34162695發表於2018-10-04

閱讀原文

Chapter 12 .庫和表的管理

DDL

/*

資料定義語言

庫和表的管理

一、庫的管理

建立、修改、刪除

二、表的管理

建立、修改、刪除

  • 建立: create

  • 修改: alter

  • 刪除: drop

*/

一、庫的管理

1、庫的建立

/*

語法:

create database  [if not exists]庫名;

*/

案例:建立庫Books

CREATE DATABASE IF NOT EXISTS books ;

2、庫的修改

RENAME DATABASE books TO 新庫名;

更改庫的字符集

ALTER DATABASE books CHARACTER SET gbk;

3、庫的刪除

DROP DATABASE IF EXISTS books;

二、表的管理

1.表的建立 ★

/*

語法:

create table 表名(
    列名 列的型別【(長度) 約束】,
    列名 列的型別【(長度) 約束】,
    列名 列的型別【(長度) 約束】,
    ...
    列名 列的型別【(長度) 約束】


)

*/

案例:建立表Book

CREATE TABLE book(
    id INT,#編號
    bName VARCHAR(20),#圖書名
    price DOUBLE,#價格
    authorId  INT,#作者編號
    publishDate DATETIME#出版日期



);


DESC book;

案例:建立表author

CREATE TABLE IF NOT EXISTS author(
    id INT,
    au_name VARCHAR(20),
    nation VARCHAR(10)

)
DESC author;

2.表的修改

/*

語法

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 book_author 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 TABLE IF EXISTS 舊錶名;
CREATE TABLE  表名();

4.表的複製

INSERT INTO author VALUES
(1,'村上春樹','日本'),
(2,'莫言','中國'),
(3,'馮唐','中國'),
(4,'金庸','中國');

SELECT * FROM Author;
SELECT * FROM copy2;

1.僅僅複製表的結構

CREATE TABLE copy LIKE author;

2.複製表的結構+資料

CREATE TABLE copy2 
SELECT * FROM author;

只複製部分資料

CREATE TABLE copy3
SELECT id,au_name
FROM author 
WHERE nation='中國';

僅僅複製某些欄位

CREATE TABLE copy4 
SELECT id,au_name
FROM author
WHERE 0;

相關文章