mysql練習之Alter用法總結 alert 用法總結: ALTER DATABASE語法 ALTER DATABASE用於更改數據庫的全局特性。這些特性儲存在數據庫目錄中的db.opt文件中。要使用ALTER DATABASE,您需要獲得數據庫ALTER權限。 www.2cto.com CHARACTER SET子句用於更改默認的數據庫字符集。COLLATE子句用於更改默認的數據庫整序。 數據庫名稱可以忽略,此時,語句對應於默認數據庫。也可以使用ALTER SCHEMA。 ALTER TABLE語法 ALTER TABLE用於更改原有表的結構。例如,您可以增加或刪減列,創建或取消索引,更改原有列的類型,或重新命名列或表。您還可以更改表的評注和表的類型。 1:刪除列 ALTER TABLE 【表名字】 DROP 【列名稱】 2:增加列 ALTER TABLE 【表名字】 ADD 【列名稱】 INT NOT NULL COMMENT '注釋說明' 3:修改列的類型信息 ALTER TABLE 【表名字】 CHANGE 【列名稱】【新列名稱(這裡可以用和原來列同名即可)】 BIGINT NOT NULL COMMENT '注釋說明' 如果您想要更改列的類型而不是名稱, CHANGE語法仍然要求舊的和新的列名稱,即使舊的和新的列名稱是一樣的。例如: mysql> ALTER TABLE t1 CHANGE b b BIGINT NOT NULL; 您也可以使用MODIFY來改變列的類型,此時不需要重命名: mysql> ALTER TABLE t1 MODIFY b BIGINT NOT NULL; 如果您使用CHANGE或MODITY縮短列長時,列中存在有索引,並且縮短後的列長小於索引長度,則MySQL會自動縮短索引的長度。 www.2cto.com · 當您使用CHANGE或MODIFY更改列的類型時,MySQL會盡量把原有的列值轉化為新的類型。 · 您可以使用FIRST或AFTER col_name在一個表行中的某個特定位置添加列。默認把列添加到最後。您也可以在CHANGE或MODIFY語句中使用FIRST和AFTER。 4:重命名列 ALTER TABLE 【表名字】 CHANGE 【列名稱】【新列名稱】 BIGINT NOT NULL COMMENT '注釋說明' 5:重命名表 ALTER TABLE 【表名字】 RENAME 【表新名字】 6:刪除表中主鍵 Alter TABLE 【表名字】 drop primary key 7: 添加主鍵 alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id); ALTER TABLE sj_resource_charges ADD CONSTRAINT PK_SJ_RESOURCE_CHARGES PRIMARY KEY (resid,resfromid) 8:添加索引 www.2cto.com ALTER TABLE sj_resource_charges add index INDEX_NAME (name); 9: 添加唯一限制條件索引 ALTER TABLE sj_resource_charges add unique emp_name2(cardnumber); (emp_name2 就是自己起的名字) [sql] alter table good add unique ugood_name(name); 10: 刪除索引 alter table tablename drop index emp_name; 11 添加主鍵自增長 [sql] alter table good modify id int auto_increment; 12、刪除唯一限制條件 alter table good add unique good_name (name); 實際上就是刪除索引。 增加唯一限制會添加一個索引。 www.2cto.com [plain] ALTER TABLE `good` DROP INDEX `ugood_name`; 13、 刪除主鍵自增長。 [sql] ALTER TABLE `good` MODIFY COLUMN `id` int(11) NOT NULL FIRST ;