create index 与 alter table add index 区别

Posted moss_tan_jun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了create index 与 alter table add index 区别相关的知识,希望对你有一定的参考价值。

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

以上是关于create index 与 alter table add index 区别的主要内容,如果未能解决你的问题,请参考以下文章

mysql alter table修改表命令整理

Hive - Create Table&Drop Table & ALTER Table(中)

Oracle文档总结

Hive - Create Table&Drop Table & ALTER Table(上)

是否可以回滚主要 SQL 数据库中的 CREATE TABLE 和 ALTER TABLE 语句?

ALTER TABLE CREATE CONSTRAINT IF NOT EXIST 可能吗?