1. 程式人生 > 實用技巧 >MySQL資料表新增欄位、修改和刪除示例詳情

MySQL資料表新增欄位、修改和刪除示例詳情

MySQL資料表新增欄位

  MySQL資料表是由行和列構成的,通常把表的"列"稱為欄位(Field),把表的“行”校標為記錄(Record)。在實際的業務中,可能已存在的表中新增新的欄位值,MySQL允許在表的開頭、中間和結尾新增欄位

在開頭新增欄位:

  MySQL預設在表的最後新增欄位,乳溝希望在開頭位置(第一列前)新增欄位,那麼可以使用FIRST關鍵字,語法格式如下:

  FIRST 關鍵字一般放在語句的末尾

ALERT TABLE 表名DD 新欄位 資料型別 約束條件 FIRST

--示例:
--

-- 目前只有四個欄位,我們再最前面新增新欄位

  ALTER TABLE `center`.`beimu`
  ADD COLUMN

`FLOW` int(15) NULL COMMENT '流程ID' FIRST; --FIRST 關鍵字一般放在語句的末尾

  --新增備註

  ALTER TABLE `center`.`beimu`
  MODIFY COLUMN `BEI_ID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID' FIRST,
  MODIFY COLUMN `BEI_NAME` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '姓名' AFTER `BEI_ID`,
  MODIFY COLUMN

`BEI_AGE` int(11) NULL DEFAULT NULL COMMENT '年齡' AFTER `BEI_NAME`,
  MODIFY COLUMN `BEI_BIRTHDAY` date NULL DEFAULT NULL COMMENT '生成時間' AFTER `BEI_AGE`;

  --執行之後,我們發現在BEI_ID面前新增了欄位,表示新增成功

語法解釋如下:

ADD COLUMN :新增欄位
COMMENT :註釋、註解、備註
MODIFY COLUMN:修改欄位型別或者欄位
FIRST 關鍵字一般放在語句的末尾
DEFAULT NULL:預設為空


  • 表名:要操作的資料名稱
  • 欄位名:需要新增的欄位名
  • 資料型別:為新增欄位能儲存資料的資料型別
  • 約束條件:是可選的,從來對新增的欄位進行操作(比如是否必填)

在中間位置新增欄位:

  MySQL可以再表的開頭新增i新的欄位,同樣也允許在表的中間新增欄位(指定的欄位之後),使用AFTER關鍵字,語法格式如下:

  AFTER的作用是將新欄位新增到某個已有欄位後面。


ALTER TABLE `資料庫名`.`表名` 
ADD COLUMN 欄位名 資料型別 約束條件 COMMENT  備註 AFTER 需欄位前新增的欄位;
--語法示例:
ALTER TABLE `center`.`beimu` ADD COLUMN ·XFSJ· date NULL COMMENT
'時間' AFTER `BEI_AGE`;
--執行後結果

語法解釋如下:

ADD COLUMN :新增欄位
COMMENT :註釋、註解、備註
AFTER :在....之後,在...後面
需欄位前新增的欄位:再誰之前新增欄位就是哪個子彈,就好必,我在A前新增B,那這裡就是A
  • 表名:要操作的資料名稱
  • 欄位名:需要新增的欄位名
  • 資料型別:為新增欄位能儲存資料的資料型別
  • 約束條件:是可選的,從來對新增的欄位進行操作(比如是否必填)

在末尾新增欄位:

  完整的欄位包括欄位名、資料型別和約束條件。MySQL 新增欄位的語法格式如下:

ALTER TABLE 表名 ADD COLUMN 欄位名 資料型別 約束條件

法格式的解釋如下:

ADD COLUMN:新增欄位
COLUMN:欄目(指哪一列)
  • 表名:要操作的資料名稱
  • 欄位名:需要新增的欄位名
  • 資料型別:為新增欄位能儲存資料的資料型別
  • 約束條件:是可選的,從來對新增的欄位進行操作(比如是否必填)

修改MySQL欄位:

  MySQL可以新增欄位,同樣提供了修改欄位的方法,語法格式如下:

ALTER TABLE 表名 CHANGE 舊欄位名 新欄位 新資料型別;

ALTER TABLE `center`.`beimu` 
CHANGE COLUMN `·XFSJ·` `XFSJ` date NULL DEFAULT NULL COMMENT ' AFTER `BEI_AGE`;

  其中:

  • 舊欄位名:指修改前的欄位名;
  • 新欄位名:指修改後的欄位名;
  • 新資料型別:指修改後的資料型別,如果不需要修改欄位的資料型別,可以將新資料型別設定成與原來一樣,但資料型別不能為空。

以上的修改方式不單單隻有欄位名,資料型別和備註都可以修改

修改欄位資料型別:

  修改欄位的資料型別就是把欄位的資料型別轉換成另一種資料型別。在 MySQL 中修改欄位資料型別的語法規則如下:

ALTER TABLE <表名> MODIFY <欄位名> <資料型別>
提示:由於不同型別的資料在機器中的儲存方式及長度並不相同,修改資料型別可能會影響資料表中已有的資料記錄,因此,當資料表中已經有資料時,不要輕易修改資料型別。

其中:

  • 表名:指要修改資料型別的欄位所在表的名稱;
  • 欄位名:指需要修改的欄位;
  • 資料型別:指修改後欄位的新資料型別。

CHANGE 也可以只修改資料型別,實現和 MODIFY 同樣的效果,方法是將 SQL 語句中的“新欄位名”和“舊欄位名”設定為相同的名稱,只改變“資料型別”。

刪除欄位:

刪除欄位是將資料表中的某個欄位從表中移除,語法格式如下:

ALTER TABLE <表名> DROP <欄位名>;
--欄位名”指需要從表中刪除的欄位的名稱。