Mysql入門第一課《建表、改表、刪表》

前言

本人想學數據庫了,於是有了這個Mysql系列。

本系列主要用於本人學習Mysql的記錄,我把它當做學習筆記。
沒有從安裝數據庫及用戶新增和權限分配等知識開始,而是側重於Mysql表操作、數據增刪改查及其他相關知識。

爲學習方便,以下將以student(學生表)、class(班級表)、lesson(課程表) 爲導向進行學習。

另外,本人所用可視化工具是Navicat Premium

還有一點:該篇文章用到一些簡單的數據類型字段,如:INT、TINYINT、VARCHAR 只需知道它是數字類型和字符串類型。
關於數據類型本篇不做介紹,我會在接下來完成《數據類型》專門說這塊。

建表

建表通用語句:

CREATE TABLE table_name (column_name column_type);

翻譯過來就是:CREATE TABLE 表名 ( 字段名 字段類型等 );

建立 student 表

使用上面通用語句來建學生表:

CREATE TABLE student (
    id INT PRIMARY KEY AUTO_INCREMENT COMMENT '自增主鍵',
    student_name VARCHAR(30) COMMENT '學生姓名',
    age TINYINT DEFAULT 0 COMMENT '年齡',
    sex CHAR(5) NOT NULL DEFAULT '0' COMMENT '性別', 
    create_time timestamp DEFAULT CURRENT_TIMESTAMP()
) ENGINE=InnoDB DEFAULT CHARACTER=utf8;

運行上面 sql 後,建表成功:

分析一下建表語句,先看除字段以外的部分:

CREATE TABLE student (
   ...
) ENGINE=InnoDB DEFAULT CHARACTER=utf8;

ENGINE=InnoDB DEFAULT CHARACTER=utf8;是數據庫默認的可以不用寫,但作爲新手應該知道,這句是指:數據庫引擎使用的是InnoDB, 默認的字符編碼是utf8

下面再來看看字段定義部分:

id INT PRIMARY KEY AUTO_INCREMENT COMMENT '自增主鍵',
student_name VARCHAR(30) COMMENT '學生姓名',
age TINYINT DEFAULT 0 COMMENT '年齡',
sex CHAR(5) NOT NULL DEFAULT '0' COMMENT '性別', 
create_time timestamp DEFAULT CURRENT_TIMESTAMP()
  • id: 字段名稱
  • INT: 字段數據類型
  • PRIMARY KEY: 將該字段設爲主鍵
  • AUTO_INCREMENT:自增
  • COMMENT:爲該字段添加註釋,後面的字符串爲註釋內容
  • DEFAULT: 默認值
  • CURRENT_TIMESTAMP(): 當前時間

總結一下公式大概就是:
字段名稱 + 字段類型 + [ 默認值、主鍵設置、自增、註釋...... ]
[ ]內爲可選項

以上是建表時常用的命令,[]內的......表示還有其他命令,但上面對我這個入門者已經夠了。

注意:建表時還需要考慮表之間的關聯和 foreign key(外鍵) ,這裏暫時不介紹,後面會有章節專門來說這塊。

改表

表是建好了,但隨着開發進行 之前建好的表很可能不滿足未來需求,所以對錶的修改是必須的

同樣,修改表也有通用語句:

ALTER TABLE <表名> [修改選項]

下面是修改選項語法

添加字段:

ADD COLUMN <列名> <類型> ...

修改字段名:

CHANGE COLUMN <舊列名> <新列名> <新列類型> ...

優化(修改)字段類型

MODIFY COLUMN <列名> <類型> ...

刪除字段

DROP COLUMN <列名> ...

修改表名

RENAME TO <新表名>

對於 MODIFYCHANGE可能有疑問,這裏說明下:MODIFY主要用於修改字段類型等,不能修改字段名稱,而CHANGE是把舊字段換成新字段 當然也可以修改字段類型。

簡單來說MODIFY是對原有字段做類型修改,CHANGE是直接將整個字段換掉 包括類型等

添加字段

下面動手操作一把,首先是對錶添加字段:

ALTER TABLE student ADD COLUMN hobby VARCHAR(100);

上面語句爲 student 表添加了一個字段hobby(愛好) ,該字段數據類型是字符串(100字符)。

下圖表示 hobby 字段添加成功:

使用 CHANGE 修改字段

ALTER TABLE student CHANGE COLUMN hobby hobby_num TINYINT;

上面語句將舊字段 hobby 替換成新字段 hobby_num 字段類型爲數字類型;

執行完後的結果如下:

使用 MODIFY 修改字段類型

上面說過,MODIFY不能修改字段名,一般用於修改字段類型等操作,下面我們把剛纔的hobby_num從數字類型改爲字符串類型:

ALTER TABLE student MODIFY COLUMN hobby_num VARCHAR(30);


可以看到,類型已經成功修改爲VARCHAR類型。

刪除字段

刪除字段非常簡單,這裏我們刪除 hobby_num 字段:

ALTER TABLE student DROP COLUMN hobby_num;

執行成功,下圖中 hobby_num 已經被刪除:

修改表名

修改表名的操作頻率非常低,但還是要知道一下。
我們把 student 表名改爲 students:

ALTER TABLE student RENAME students;

執行後可以看到,表名已經修改成功:

刪表

刪表的操作除了在學習中常用到,真正在開發中操作頻率也非常低。
刪表語句如下:

DROP TABLE table_name;

我們把 students 表給刪了:

DROP TABLE students;

看下結果:

OK,表沒了...沒了...了...

總結

本篇學習了:

  1. 如何創建表
  2. 對錶名進行更改、表字段進行增刪改操作
  3. 對錶進行刪除操作

可能的疑惑:
建表的時候用了很多數據類型,光數字類型就出現了INTTINYINT,字符串類型出現了CHARVARCHAR

所以下篇文章我們來學習《數據類型》來了解它們。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章