測試必備的Mysql常用sql語句系列
https://www.cnblogs.com/poloyy/category/1683347.html
前言
針對數據表的操作語句叫做數據定義語言(DDL)
數據表有哪些操作?
- 創建數據表
- 查看表結構
- 查看數據表的創建語句
- 復制數據表
- 修改數據表
- 刪除數據表
簡稱“增刪改查“,點擊右邊目錄即可跳轉哦! -------------->>>>>>>>>>
創建數據表
語法格式
CREATE TABLE <表名> ( [表定義選項] )[表選項][分區選項];
知識點
- 表名:兩種寫法,可以直接寫數據表的名字 tbl_name ,也可以 db_name.tbl_name ,先指定數據庫再指定數據表名;后者寫法是為了:無論是否在當前數據庫,也能通過這種方式在指定數據庫下創建表
- 表定義選項:一般都是 列名、列定義、默認值、約束、索引組成
實際栗子
# 創建數據表 CREATE TABLE yytest ( id INT ( 10 ) NOT NULL UNIQUE PRIMARY KEY, uname VARCHAR ( 20 ) NOT NULL, sex VARCHAR ( 4 ), birth YEAR, department VARCHAR ( 20 ), address VARCHAR ( 50 ), yypolo VARCHAR ( 20 ) ); # 指定數據庫,創建數據表 CREATE TABLE yytest.polotest ( id INT ( 10 ) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT, stu_id INT ( 10 ) NOT NULL, c_name VARCHAR ( 20 ), istester VARCHAR ( 50 ), grade INT ( 10 ) );
查看表結構
desc yytest.yytest;
執行結果
知識點
- Null:表示該字段是否可以存儲 NULL 值
- Key:表示該字段是否已編制索引。PRI 表示主鍵,UNI 表示UNIQUE 索引,MUL 表示某個給定值允許出現多次
- Default:表示該字段是否有默認值,如果有,值是多少
- Extra:表示該字段的附加信息,如 AUTO_INCREMENT 等
查看數據表的創建語句
show create table yytest;
執行結果
知識點
不僅可以查看創建表時的詳細語句,而且可以查看存儲引擎和字符編碼
復制數據表
# 僅復制表結構 create table yytest2 like yytest; # 復制表結構和數據 create table yytest3 as select * from yytest; # 僅復制表的指定字段結構 create table yytest4 as select id,uname,sex from yytest where 1<>1; # 復制表的指定字段結構和數據 create table yytest5 as select id,uname,sex from yytest; # 查看表創建語句:沒有包含主鍵和自增 show create table yytest5;
知識點
- 僅復制全部字段的結構直接加 like
- 復制表不包含主鍵、索引、自增等
修改數據表
語法格式
ALTER TABLE <表名> [修改操作];
知識點
常用的修改表的操作
- 修改表名
- 修改字段數據類型或字段名
- 增加和刪除字段
- 修改字段的排列位置
- add、drop、change、modify、rename
修改表名
語法格式
ALTER TABLE <舊表名> RENAME [TO] <新表名>;
注意
- [TO] 加不加都行,不影響結果
- 修改表名不影響表結構
實際栗子
alter table yytest2 rename to yytest22; alter table yytest22 rename yytest22;
修改字段排列順序
語法格式
ALTER TABLE <表名> MODIFY <字段名> <數據類型> [FIRST|AFTER 已存在的字段名];
實際栗子
# 放在首位 alter table yytest22 modify sex int(2) first; # 放在birth字段后面 alter table yytest22 modify sex int(2) after birth;
修改字段數據類型
語法格式
ALTER TABLE <表名> MODIFY <字段名> <數據類型>;
實際栗子
# 修改字段數據類型 alter table yytest22 modify sex int(2);
修改字段名字
語法格式
ALTER TABLE <表名> CHANGE <舊字段> <新字段> <數據類型>;
實際栗子
# 修改字段名 alter table yytest22 change sex sexs int(2); # 修改字段數據類型和字段名 alter table yytest22 change sexs sex varchar(4);
知識點
change不僅可以改字段名,也可以改字段數據類型
添加字段
語法格式
ALTER TABLE <表名> ADD <字段名> <數據類型> [約束條件] [FIRST|AFTER 已存在的字段名];
實際栗子
# 添加字段 alter table yytest22 add phone varchar(11); # 添加字段到首位 alter table yytest22 add phone varchar(11) not null default 2 first; # 添加字段到某個字段后面 alter table yytest22 add phone varchar(11) after sex;
刪除字段
語法格式
ALTER TABLE <表名> DROP <字段名>;
實際栗子
# 刪除字段 alter table yytest22 drop phone;
刪除數據表
語法格式
DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...]
可以看到跟刪除庫差不多
實際栗子
# 刪除表如果存在 drop table if exists yytest,polotest
謹慎操作吧!!數據會清空哦!!