ホームページ > データベース > mysql チュートリアル > mysql练习之Alter用法总结_MySQL

mysql练习之Alter用法总结_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-01 13:36:23
オリジナル
1442 人が閲覧しました

bitsCN.com

mysql练习之Alter用法总结

 

alert 用法总结:

 

ALTER DATABASE语法

ALTER DATABASE用于更改数据库的全局特性。这些特性储存在数据库目录中的db.opt文件中。要使用ALTER DATABASE,您需要获得数据库ALTER权限。

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会自动缩短索引的长度。

·         当您使用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:添加索引    

 

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);

 

实际上就是删除索引。 增加唯一限制会添加一个索引。

[plain] 

ALTER TABLE `good`  

DROP INDEX `ugood_name`;  

 

13、 删除主键自增长。

[sql] 

ALTER TABLE `good`  

MODIFY COLUMN `id`  int(11) NOT NULL FIRST ;  

 

bitsCN.com
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート