注意:
一般情況下,不推薦在建表後對錶進行大幅度修改,大幅度修改極有可能使表資料丟失。因此需要修改之前一定要對錶做好資料備份;
##刪除列
alter table 表名 drop column 列名;
##增加列
alter table 表名 add column 列名 屬性 【約束】;
##修改列的型別資訊
alter table 表名 change column 列名 【新】列名 新屬性;
##重新命名列
alter table 表名字 change column 列名 新列名 屬性;
##重新命名表
alter table 表名 rename to 表新名;
##刪除表中的主鍵
alter table 表名 drop primary key;
##新增主鍵
alter table 表名 add constraint 約束名 primary key (新增列) ;
##新增索引
alter table 表名 add index 索引名 (列名);
##修改列的屬性
alter table 表名 modify column 要修改屬性的列名 新屬性;
##以mysql表舉例:
##建表
create table user_tb1 (u_name varchar(30),u_phone varchar(20),u_national varchar(30));
##檢視表
desc user_tb1;
##刪除列u_name
alter table user_tb1 drop column u_name;
desc user_tb1;
##新增列add_name
alter table user_tb1 add column add_name varchar(40);
desc user_tb1;
##修改列的型別資訊
alter table user_tb1 change column u_phone u_phone varchar(40);
或者:##修改列屬性的同時改變列名
alter table user_tb1 change column u_phone chage_phone varchar(40);
##重新命名列
alter table user_tb1 change column u_national chage_national varchar(60);
##重新命名表
alter table user_tb1 rename to chage_tb1;
##檢視改名後的表
##新增主鍵
alter table chage_tb1 add constraint pk_name primary key (`add_name`);
或者:alter table chage_tb1 add primary key (`add_name`);
desc chage_tb1;
##刪除表中的主鍵
##新增普通索引
alter table chage_tb1 add index(`add_name`);
##修改列的屬性
alter table chage_tb1 modify column chage_phone varchar(66);
desc chage_tb1;
##刪除索引
drop index add_name on chage_tb1;
或者:alter table chage_tb1 drop index add_name;
mysql的alter用法總結
當表被建立後,在使用過程中可能會有一些新的需求,這時候可能需要修改表的結構。如果表中已經填充了資料,重新建表會造成現有資料的丟失,為此可以用alter table對錶結構進行修改 向表中新增列的前提是所新增的列允許使用null值或者對該列使用default約數指定了預設的值。alter table ...
MySQL之alter語句用法總結
mysql之alter語句用法總結 1 刪除列 alter table 表名字 drop 列名稱 2 增加列 alter table 表名字 add 列名稱 int not null comment 注釋說明 3 修改列的型別資訊 alter table 表名字 change 列名稱 新列名稱 這裡...
mysql練習之Alter用法總結
mysql練習之alter用法總結 alert 用法總結 alter database語法 alter database用於更改 資料庫的全域性特性。這些特性儲存在資料庫目錄中的db.opt檔案中。要使用alter database,您需要獲得資料庫alter許可權。character set子句用...