## 數據表操作
注意 : 對表的操作必須要選定數據庫.
#### 創建數據表
~~~
create table 表名 (
字段名 字段類型 [字段屬性],
字段名 字段類型 [字段屬性],
...
) [表選項];
~~~
~~~
create table class(
id int zerofill auto_increment primary key,
name char(20) not null,
age tinyint unsigned not null
) charset utf8;
~~~
#### 復制已有表結構(只復制結構,不復制數據)
~~~
create table 新表名 like 需要復制結構的表名;
~~~
#### 顯示所有表
~~~
show tables;
~~~
#### 顯示表結構
~~~
desc 表名;
+-------+---------------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------------------+------+-----+---------+----------------+
| id | int(10) unsigned zerofill | NO | PRI | NULL | auto_increment |
| name | char(20) | NO | | NULL | |
| age | tinyint(4) | NO | | NULL | |
+-------+---------------------------+------+-----+---------+----------------+
~~~
* Field : 字段名稱.
* Type : 字段類型.
* Null : 是否允許未空,yes表示允許.
* Key : 索引.
* Default : 默認值, NULL表示默認為NULL.
* Extra : 額外屬性.
#### 顯示表創建語句
~~~
show create table 表名;
~~~
#### 修改表屬性(表屬性就是engine,charset,collate)
~~~
alter table class
如:
alter table class engine innodb,charset utf8;
~~~
#### 修改表名
~~~
rename table 舊表名 to 新表名;
~~~
#### 新增字段
~~~
alter table 表名 add 字段名 字段類型 [字段屬性] [位置];
如:
alter table 表名 add age tinyint not null unsigned comment '年齡' after height;
在表中height字段后面添加age字段無符號,微整型.
~~~
#### 修改字段名(修改字段名一定要就會清空字段屬性,所以連字段屬性也要設置,不要以為僅僅修改表名就行了)
~~~
alter table 表名 change 舊字段名 新字段名 字段屬性 新位置;
~~~
#### 修改字段類型/屬性
~~~
alter table 表名 modify 字段名 字段屬性 [位置];
~~~
#### 刪除字段
~~~
alter table 表名 字段名;
~~~
#### 刪除表
~~~
drop table 表1,表2;
~~~
- 數據庫介紹
- 數據庫基本概念
- SQL介紹
- MySQL服務端架構
- 庫操作
- 表操作
- 字段類型
- 整數類型
- 小數類型
- 字符串類型
- 日期/時間類型
- json類型
- 字段屬性
- Null
- 默認值
- 列描述
- 主鍵
- 自動增長
- 唯一鍵
- 數據庫基礎操作
- 增
- 刪
- 改
- 查
- 運算符
- 算術運算符
- 比較運算符
- 邏輯運算符
- in運算符
- is運算符
- like運算符
- 高級查詢
- 聯合查詢
- 連接查詢
- 交叉連接
- 內連接
- 外連接
- Using關鍵字
- 子查詢
- 標量子查詢
- 列子查詢
- 行子查詢
- 表子查詢
- exists子查詢
- 子查詢特定關鍵字
- 用戶權限管理
- 用戶管理
- 權限管理
- 外鍵
- 外鍵操作
- 外鍵基本要求
- 約束
- 視圖
- 事務安全
- 自動事務
- 手動事務
- 事務特點
- 變量
- 系統變量
- 會話變量
- 局部變量
- 流程結構
- if分支
- while循環
- 函數
- 內置函數
- 字符串函數
- 時間函數
- 數學函數
- 其他函數
- 存儲過程
- 與函數的區別
- 存儲過程操作
- 存儲過程的形參類型
- 觸發器
- 觸發器概念
- 觸發器操作