Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment vérifier un index dans Oracle

select count(*) from user_indexes where index_name ='myIndex'

sqlplus ne prendra pas en charge IF..., cependant, vous devrez donc utiliser des blocs PL/SQL anonymes, ce qui signifie EXECUTE IMMEDIATE pour faire DDL.

DECLARE
    i INTEGER;
BEGIN
    SELECT COUNT(*) INTO i FROM user_indexes WHERE index_name = 'MYINDEX';
    IF i = 0 THEN
        EXECUTE IMMEDIATE 'CREATE INDEX myIndex ...';
    END IF;
END;
/

Modifier :comme indiqué, Oracle stocke les noms d'objets sans guillemets en majuscules.