如何在MySQL中删除此索引?
它是这样创建的:如何在MySQL中删除此索引?,mysql,indexing,Mysql,Indexing,它是这样创建的: create table listings( id integer unsigned NOT NULL AUTO_INCREMENT, accountId integer unsigned default null, title varchar(300) not null, country integer unsigned, region integer unsigned, type integer unsigned,
create table listings(
id integer unsigned NOT NULL AUTO_INCREMENT,
accountId integer unsigned default null,
title varchar(300) not null,
country integer unsigned,
region integer unsigned,
type integer unsigned,
price integer,
unit varchar(20) not null,
priceUSD decimal(12,2),
bedrooms integer unsigned,
thumbnail varchar(100) default null,
keywords text,
created datetime,
deleted boolean default 0,
fulltext index (keywords),
PRIMARY KEY (id)
) engine=MyISAM;
如何删除没有名称的全文索引
如果未命名的索引是:
全文索引(标题、关键字)
?在mysql
客户端中运行此命令:
mysql> SHOW CREATE TABLE listings;
它将显示表的DDL,包括系统为索引分配的名称。
更改表{your_table_name}删除索引{your_index_name}
或
将索引{your_INDEX_name}放到{your_tbl_name}
您还可以使用语法获取表索引信息
显示列表中的索引;
另外,当您不为索引提供名称时,MySQL将根据被索引的列自动为索引提供名称
对于全文索引(关键字)
,MySQL很可能将索引命名为关键字
对于全文索引(标题、关键字)
,MySQL很可能会将索引命名为title
我之所以说“最有可能”,是因为如果已经有一个名为
keywords
或title
的索引,MySQL会给它起个别的名字。使用test
数据库,创建一个新的空表,其中包含全文索引,这样您就可以观察show create table
如何显示系统为索引和约束分配的名称。
mysql> SHOW CREATE TABLE listings;