1. 程式人生 > 實用技巧 >mysql中DDL庫和表的管理

mysql中DDL庫和表的管理

 #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
USE myemployees;
CREATE TABLE book(
id INT,
bname VARCHAR(20),
price DOUBLE,
authorid VARCHAR(20),
publishdate TIMESTAMP #出版日期
) #案例:建立表author
CREATE TABLE 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 TIMESTAMP; #修改列的型別或約束
ALTER TABLE book MODIFY COLUMN id VARCHAR(20); #新增新列
ALTER TABLE author ADD COLUMN annual DOUBLE ; #刪除列
ALTER TABLE author DROP COMMIT annual; #修改表名
ALTER TABLE book MODIFY COLUMN pubdate TIMESTAMP; #3、表的刪除
DROP TABLE if EXISTS book_author; SHOW TABLES; #通用的寫法:
DROP DATABASE if EXISTS 舊庫名;
CREATE DATABASE 新庫名; DROP TABLE if EXISTS 舊錶名;
CREATE TABLE 新表名; #4、表的複製
#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;