修改表結構
修改表結構使用ALTER TABLE 語句。修改表結構指增加或刪除字段、修改字段名或者字段類型、設置或取消主鍵外鍵、設置或取消索引及修改表的注釋等。
語法格式如下:
ALTER[IGNORE] TABLE 數據表名 alter_spec[,alter_spec]…;
注意:當指定IGNORE時,如果出現重復關鍵的行,則只執行一行,其他重復的行被刪除。
其中,alter_spec子句定義要修改的內容,起語法如下:
alter_specification:
ADD[COLUMN]create_definition[FIRST|AFTER?column_name]????????????????????????????//添加新字段 ADD?INDEX?[index_name](index_col_name,...)???????????????????????????????????????//添加索引名稱 ADD?PRIMARY?KEY(index_col_name,...)??????????????????????????????????????????????//添加主鍵名稱 ADD?UNIQUE[index_name](index_col_name,...)???????????????????????????????????????//添加唯一索引 ALTER[COLUMN]col_name{SET?default?ilteral?|DROP?DEFAULT}?????????????????????????//修改字段名稱 CHANGE[COLUMN]old_col_name?create_definition?????????????????????????????????????//修改字段類型 MODIFY[COLUMN]create_definition??????????????????????????????????????????????????//修改子句定義字段 DROP[COLUMN]col_name?????????????????????????????????????????????????????????????//刪除字段名稱 DROP?PRIMARY?KEY?????????????????????????????????????????????????????????????????//刪除主鍵名稱 DROP?INDEX?index_name????????????????????????????????????????????????????????????//刪除索引名稱 RENAME?[AS]new_tbl_name??????????????????????????????????????????????????????????//更改表名 table_options
ALTER TABLE 語句允許指定多個alter_spec子句,每個子句間使用逗號分隔,每個子句表示對表的一個修改。
例如:假設有張表叫admin,現在要添加新的字段email,類型為varcher(50),not null,將字段user的類型由varcher(50)改為varcher(40),代碼如下:
alter table admin add email?varcher(50) not null,modify user?varcher(40);
在添加完成之后,大家還可以通過show admin;查看整個表的結構,以此來確認字段是否添加成功。
注意:通過alter修改表列的前提是必須將表中數據全部刪除,然后才可以修改。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END