MySql:Cancellare un indice controllando prima se esiste

Versione del 21 set 2022 alle 10:03 di Andrea (discussione | contributi) (Creata pagina con "← Torna a MySQL Esempio: <pre> SET @exist := (SELECT COUNT(*) FROM information_schema.statistics WHERE `table_name` = '<nome-tabella>' and `index_name...")
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

← Torna a MySQL

Esempio:

SET @exist := (SELECT COUNT(*) FROM information_schema.statistics WHERE `table_name` = '<nome-tabella>' and `index_name` = '<nome-indice>' and `table_schema` = database());
SET @sqlstmt := IF( @exist > 0 , 'ALTER TABLE `<nome-tabella>` DROP INDEX `<nome-indice>`;', 'SELECT ''INFO: Indice non trovato.''');
PREPARE stmt FROM @sqlstmt;
EXECUTE stmt;