Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie kann ich verwenden, wenn existiert, um einen Index in MySQL zu erstellen oder zu löschen?

Hier ist mein 4-Liner:

set @exist := (select count(*) from information_schema.statistics where table_name = 'table' and index_name = 'index' and table_schema = database());
set @sqlstmt := if( @exist > 0, 'select ''INFO: Index already exists.''', 'create index i_index on tablename ( columnname )');
PREPARE stmt FROM @sqlstmt;
EXECUTE stmt;