oracle 批量新建索引SQL

user_tables:當前用戶表信息,參數如下:

UNIQUE:是唯一鍵索引,如果建非唯一鍵索引SQL語句去掉此關鍵詞即可;

table_name :表名;

tablespace_name :表空間名

第一步瞭解新建一條索引的sql:CREATE UNIQUE INDEX  索引名 on 表名(想要創建索引的列名) TABLESPACE 表空間名;

第二步查看當前用戶表空間存在那些表:select table_name,tablespace_name from user_tables;

第三步用sql返回創建索引的變量的值,我這裏以列名ID爲例,就可以將批量新建索引的SQL語句拼接出來了,如下:

SELECT
    'CREATE UNIQUE INDEX ' || table_name || '_IDX_ID ON ' || table_name || '(ID) TABLESPACE ' || tablespace_name || ';'
FROM
    user_tables;

執行後,得到如下結果,如圖:

第四步將結果信息複製出來執行下就可以了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章