MySQL 基礎十三(DDL庫和表的管理)

2021-09-29 17:34:16 字數 4063 閱讀 9336

ddl

資料定義語言:庫和表的管理

一、庫的管理

建立、修改、刪除

二、表的管理

建立、修改、刪除

建立: create

修改: alter

刪除: drop

#一、庫的管理

#1、庫的建立

/*語法:

create database [if not exists]庫名;

*/#案例:建立庫books

create

database

ifnot

exists books ;

#2、庫的修改

rename

database books to 新庫名;

#更改庫的字符集

alter

database books character

set gbk;

#3、庫的刪除

drop

database

ifexists books;

表的管理

1.表的建立

語法:

create

table 表名(

列名 列的型別【(長度) 約束】,

列名 列的型別【(長度) 約束】,

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

. 列名 列的型別【(長度) 約束】

);

#案例:建立表book

create

table book(

id int

,#編號

bname varchar(20

),#圖書名

price double

,#**

authorid int

,#作者編號

publishdate datetime

#出版日期);

desc book;

#案例:建立表author

create

table

ifnot

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

ifexists book_author;

show

tables

;#通用的寫法:

drop

database

ifexists 舊庫名;

create

database 新庫名;

drop

table

ifexists 舊表名;

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;

示例

#1.	建立表dept1

name null? type

id int(7

)name varchar(25

)use test;

create

table dept1(

id int(7

),name varchar(25

));#2. 將表departments中的資料插入新錶dept2中

create

table dept2

select department_id,department_name

from myemployees.departments;

#3. 建立表emp5

name null? type

id int(7

)first_name varchar(25

)last_name varchar(25

)dept_id int(7

)create

table emp5(

id int(7

),first_name varchar(25

),last_name varchar(25

),dept_id int(7

));#4. 將列last_name的長度增加到50

alter

table emp5 modify

column last_name varchar(50

);#5. 根據表employees建立employees2

create

table employees2 like myemployees.employees;

#6. 刪除表emp5

drop

table

ifexists emp5;

#7. 將表employees2重新命名為emp5

alter

table employees2 rename

to emp5;

#8.在表dept和emp5中新增新列test_column,並檢查所作的操作

alter

table emp5 add

column test_column int

;#9.直接刪除表emp5中的列 dept_id

desc emp5;

alter

table emp5 drop

column test_column;

MySQL之DDL庫和表的管理

資料定義語言 針對的是表的結構 庫和表的管理 一 庫的管理 建立 修改 刪除 二 表的管理 建立 修改 刪除 建立 create 修改 alter 刪除 drop 語法 create database if not exists 庫名 character set 字符集名 案例 建立庫books 如...

Mysql運算元據庫及表DDL

運算元據庫ddl 建立和查詢 查詢資料庫 show datdabases 檢視資料庫的字符集 show create database 資料庫名稱 建立資料庫 create database 資料庫名稱 建立資料庫時判斷是否存在 create database if not exists 資料庫名稱...

MySQL 利用DDL運算元據庫 表

關鍵字理應大寫,為便於記憶,本篇都採用小寫形式。ddl data definition language 資料定義語言,用於定義資料庫物件。create database db1 建立乙個資料庫,名字叫mydb create database if not exists db2 如果db2不存在,則...