alert和create 创建索引的区别

众所周知,MySQL创建索引有两种语法,即:

 


ALTER TABLE HeadOfState ADD INDEX (LastName, FirstName);
CREATE INDEX index_name HeadOfState (LastName, FirstName);

create index 索引名称 on 表名(列名);

alter table 表名 add index 索引名称(列名);

CREATE INDEX party_member_pm_cardno ON party_member(column(pm_cardno));

  

 


那么,这两种语法有什么区别呢? 
在网上找了一下,在一个英文网站上,总结了下面几个区别,我翻译出来,如下:
1、CREATE INDEX必须提供索引名,对于ALTER TABLE,将会自动创建,如果你不提供;
2、CREATE INDEX一个语句一次只能建立一个索引,ALTER TABLE可以在一个语句建立多个,如:
      ALTER TABLE HeadOfState ADD PRIMARY KEY (ID), ADD INDEX (LastName,FirstName);
3、只有ALTER TABLE 才能创建主键,

 

1、普通索引
(1)alter table 表名 add index 索引名称(列名);
(2)create index 索引名称 on 表名(列名);
2、唯一索引
(1)alter table 表名 add unique index 索引名称(列名);
(2)create unique index 索引名称 on 表名(列名);
3、全文索引
(1)alter table 表名 add fulltext index 索引名称(列名);
(2)create fulltext index 索引名称 on 表名(列名);

  



原文链接:https://blog.csdn.net/m0_47114547/article/details/125199450

 

 

转载处 https://blog.csdn.net/weixin_40837404/article/details/105565459

posted @ 2023-05-11 14:25  张载zz  阅读(369)  评论(0编辑  收藏  举报