DEV Community

Query Filter
Query Filter

Posted on

rebuild

rebuild_indexes_for_table() {
local tablename="$1"
sqlplus -s "$ORACLE_USER/$ORACLE_PASS@$ORACLE_SID" <<EOF
WHENEVER SQLERROR EXIT SQL.SQLCODE
SET SERVEROUTPUT ON
DECLARE
v_sql VARCHAR2(1000);
BEGIN
FOR r IN (
SELECT INDEX_NAME FROM USER_INDEXES WHERE TABLE_NAME = UPPER('$tablename')
)
LOOP
v_sql := 'ALTER INDEX ' || r.INDEX_NAME || ' REBUILD';
DBMS_OUTPUT.PUT_LINE(v_sql);
EXECUTE IMMEDIATE v_sql;
END LOOP;
END;
/
EXIT
EOF
}

Top comments (0)