加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 禁用并稍后启用Oracle中的所有表索引

发布时间:2020-12-12 16:18:20 所属栏目:MsSql教程 来源:网络整理
导读:如何在Oracle中的给定架构/数据库中禁用并启用所有索引? 注意:这是为了使sqlldr运行更快. 解决方法 这里使索引不可用,没有文件: DECLARE CURSOR usr_idxs IS select * from user_indexes; cur_idx usr_idxs% ROWTYPE; v_sql VARCHAR2(1024);BEGIN OPEN usr
如何在Oracle中的给定架构/数据库中禁用并启用所有索引?

注意:这是为了使sqlldr运行更快.

解决方法

这里使索引不可用,没有文件:
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;

重建会很相似.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读