sql >> Databáze >  >> RDS >> Oracle

Zakázat a později povolit všechny indexy tabulek v Oracle

Zde jsou indexy nepoužitelné bez souboru:

DECLARE
  CURSOR  usr_idxs IS select * from user_indexes;
  cur_idx  usr_idxs% ROWTYPE;
  v_sql  VARCHAR2(1024);

BEGIN
  OPEN usr_idxs;
  LOOP
    FETCH usr_idxs INTO cur_idx;
    EXIT WHEN NOT usr_idxs%FOUND;

    v_sql:= 'ALTER INDEX ' || cur_idx.index_name || ' UNUSABLE';
    EXECUTE IMMEDIATE v_sql;
  END LOOP;
  CLOSE usr_idxs;
END;

Přestavba by byla podobná.



  1. Jak NVL() funguje v MariaDB

  2. Spočítat počet výskytů řetězce v poli VARCHAR?

  3. Důvody, proč v SQL Server 2005 nemají seskupený index

  4. Vyberte sloupce s konkrétními názvy sloupců v PostgreSQL