天天看點

從零開始學MySQL(六):DDL之資料表操作(TABLE)

作者:秋語棠

學習目标

  • 掌握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)
);           
從零開始學MySQL(六):DDL之資料表操作(TABLE)

注意:

  • 每個表必須最少有一列資料
  • 每個字段必須有資料類型,但可以沒有限制
  • 建立表時為了避免重複建立而報錯,也可以在表名之前添加IF NOT EXISTS。

2.表的檢視

我們剛才已經建立了一張表,此時我們就可以使用sql語句檢視目前所在庫中都有哪些資料表。

SHOW TABLES;           

運作效果如下:

從零開始學MySQL(六):DDL之資料表操作(TABLE)

同時,我們也可以檢視某一張表中所有的字段資訊,或者說==檢視表結構==。

DESC 表名;           
DESC category;           
從零開始學MySQL(六):DDL之資料表操作(TABLE)

注意:要查詢的表名必須存在,否則會報錯,錯誤資訊為:Table 'bigdata_db.category' doesn't exist。

3.修改表名

如果我們想修改表的名稱,可以使用RENAME TABLE進行表的重命名。

RENAME TABLE 表名 TO 新表名;           
# 将category表重命名為categories
RENAME TABLE category TO categories;
# 檢視資料庫中所有的表,驗證表名是否修改成功
SHOW TABLES;           

運作結束後,表名即修改完成。

從零開始學MySQL(六):DDL之資料表操作(TABLE)

注意:如果資料庫清單中的表名沒有及時修改,則需要在資料庫名稱上右鍵,點選refresh進行重新整理。

4.表的删除

如果需要删除表,我們使用如下語句:

DROP TABLE 表名;           

列如:

# 删除categories表
DROP TABLE categories;
# 檢視表是否被删除成功
SHOW TABLES;           

此時,我們看到,categories表已經從資料庫中被移除。

從零開始學MySQL(六):DDL之資料表操作(TABLE)

注意:表不存在則會報錯,錯誤資訊為:ERROR 1051 (42S02): Unknown table 'bigdata_db.category'。

5.小結

  • 建立表: CREATE TABLE 表名( 字段名1 資料類型(長度) 限制, 字段名2 資料類型(長度) 限制 ... );
  • 檢視表結構:DESC 表名;
  • 修改表名:DROP TABLE 表名;
  • 删除表: DROP TABLE 表名;

繼續閱讀