學習目标
- 掌握MySQL服務中表的操作方法,能夠完成表的建立,檢視,重命名和删除。
DDL之資料表操作(TABLE)
在操作資料表之前,我們先要确定我們要在哪個資料庫中進行資料表的操作,并使用該資料庫。
學習資料表的使用之前,我們需要先進行如下操作:
# 建立資料庫(該資料庫存在不報錯),指定字元集為utf8
CREATE DATABASE IF NOT EXISTS bigdata_db CHARACTER SET utf8;
# 使用資料庫
USE bigdata_db;
# 注意:如果不切換到要操作的資料庫中,之後對于表的操作會報錯
1.表的建立
我們建立表使用CREATE TABLE關鍵字,和建立資料庫類似,但要指定字段資訊:
CREATE TABLE 表名(
字段名1 資料類型(長度) 限制,
字段名2 資料類型(長度) 限制
...
);
字段名:資料表中每一列的名稱(列頭) 資料類型:資料的存儲形式(結構) 限制:資料存儲遵循的規則
例如:
CREATE TABLE category(
# 字段1名稱為cid,資料類型為整型,添加主鍵限制及非空限制
cid INT PRIMARY KEY NOT NULL,
# 字段2名稱為cname,資料類型為varchar,最大長度為100
cname VARCHAR(100)
);
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiMGc902byZ2PjVjYwMmMmNTN3UmN1MDMiBTY0QzNwUWZkZmNzITOjdzLcBza5QTcsJja2FXLp1ibj1ycvR3Lc5Wanlmcv9CXt92YucWbp9WYpRXdvRnL2A3Lc9CX6MHc0RHaiojIsJye.jpg)
注意:
- 每個表必須最少有一列資料
- 每個字段必須有資料類型,但可以沒有限制
- 建立表時為了避免重複建立而報錯,也可以在表名之前添加IF NOT EXISTS。
2.表的檢視
我們剛才已經建立了一張表,此時我們就可以使用sql語句檢視目前所在庫中都有哪些資料表。
SHOW TABLES;
運作效果如下:
同時,我們也可以檢視某一張表中所有的字段資訊,或者說==檢視表結構==。
DESC 表名;
DESC category;
注意:要查詢的表名必須存在,否則會報錯,錯誤資訊為:Table 'bigdata_db.category' doesn't exist。
3.修改表名
如果我們想修改表的名稱,可以使用RENAME TABLE進行表的重命名。
RENAME TABLE 表名 TO 新表名;
# 将category表重命名為categories
RENAME TABLE category TO categories;
# 檢視資料庫中所有的表,驗證表名是否修改成功
SHOW TABLES;
運作結束後,表名即修改完成。
注意:如果資料庫清單中的表名沒有及時修改,則需要在資料庫名稱上右鍵,點選refresh進行重新整理。
4.表的删除
如果需要删除表,我們使用如下語句:
DROP TABLE 表名;
列如:
# 删除categories表
DROP TABLE categories;
# 檢視表是否被删除成功
SHOW TABLES;
此時,我們看到,categories表已經從資料庫中被移除。
注意:表不存在則會報錯,錯誤資訊為:ERROR 1051 (42S02): Unknown table 'bigdata_db.category'。
5.小結
- 建立表: CREATE TABLE 表名( 字段名1 資料類型(長度) 限制, 字段名2 資料類型(長度) 限制 ... );
- 檢視表結構:DESC 表名;
- 修改表名:DROP TABLE 表名;
- 删除表: DROP TABLE 表名;