0
我需要一些幫助,我想在ORACLE PL/SQL中構建一個過程,它將從表dba_indexes中獲取不穩定索引的列表,並且此選擇語句也將構建聲明來修復/改變索引。ORACLE過程,變量和數據處理
所以我有SQL語句生成alter語句。
SELECT 'alter index '||owner||'.'||index_name||' rebuild online; '
FROM dba_indexes
WHERE status = 'N/A';
,輸出是:
alter index OWNER.INDEX_NAME rebuild online;
這是完美的,這也是最終結果,那麼我就必須讓程序能夠正常工作和執行ALTER語句,如果有任何if不是那麼完成程序。
現在我的問題是如何將數據從SELECT語句保存到1個變量?之後,我將只檢查變量是否爲NULL,如果爲null,則結束過程,如果不爲null,則只執行此變量?
這是可能的和如何?
非常感謝您的幫助。
只需將dba_indexes的計數值轉換爲plsql塊中的變量即可。如果計數大於0,則繼續動態構建alter語句,否則退出。 – hemalp108