小徐帶你瞭解DDL(數據定義語言)庫和表的創建,修改,刪除

DDL語言(數據定義語言)

一:庫的管理

創建,修改,刪除

二:表的管理

創建,修改,刪除

創建:create

修改:alter

刪除:drop

一:庫的管理庫的創建

語法:創建庫Books

create	database if not exists books;

更改庫的字符集

alter database books character set gbk;

刪除庫

drop database if exists book;

二:表的管理

表的創建

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

案例:創建Book表

create	table book(
	id	int,
	byName	varchar(20),
	price	double,
	authorId	int,
	publishDate		datetime
	);

表的修改

特點:
		alter		table	表名		add	|	drop		|		modify		change	column	列名	【列類型	約束】;

一:修改列名

ALTER TABLE book CHANGE COLUMN publishDate newDate TIMESTAMP;

二:修改列的類型或約束

ALTER TABLE book MODIFY COLUMN newDate datetime;

三:添加新列

ALTER TABLE book ADD COLUMN annual DOUBLE;

四:刪除列

ALTER TABLE book DROP COLUMN annual;

五:修改表名

ALTER TABLE book RENAME TO book_author;

表的刪除

DROP TABLE
IF
	EXISTS book_author;

通用的寫法創建庫

DROP DATABASE
IF
	EXISTS 舊庫名;
CREATE DATABASE 新庫名;

通用的寫法創建表

DROP TABLE
IF
	EXISTS 舊錶名;
CREATE TABLE 新表名 ();

表的複製

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

一:僅僅複製表的結構

copy 複製的新表名 book_author 原始的表

CREATE TABLE copy LIKE book_author;

複製表的結構和數據

CREATE TABLE copy2 SELECT
* 
FROM
	book_author;

只複製部分數據

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

僅僅複製某些字段

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

練習題:

創建表dept1

CREATE TABLE dept1 (
id INT ( 7 ),
NAME VARCHAR ( 25 ));

將表departments中的數據插入到新表dept2中

CREATE TABLE dept2 SELECT
department_id,
department_name 
FROM
	myemployees.departments;

創建表emp5

CREATE TABLE emp5 (
	id INT ( 7 ),
	first_name VARCHAR ( 25 ),
last_name VARCHAR ( 25 ),
dept_id INT ( 7 ));

將emp5表中的last_name的長度增加到50

ALTER TABLE emp5 MODIFY COLUMN last_name VARCHAR ( 50 );

根據表employees創建employee2

CREATE TABLE employee2 LIKE myemployees.employees;

刪除表emp5

DROP TABLE
IF
	EXISTS emp5;

將表employee2重命名爲emp5

ALTER TABLE employee2 RENAME TO emp5;

在表dept1和emp5中添加新列test_column

ALTER TABLE emp5 ADD COLUMN test_column INT;
ALTER TABLE dept1 ADD COLUMN test_column INT;

直接刪除表emp5中的列test_column

ALTER TABLE emp5 DROP COLUMN test_column;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章