Oracle PL/SQL IF语句的结构

Oracle IF 语句的结构与大多数语言类似

IF condition THEN
    expr;
ELSIF condition THEN
    expr;
ELSE
    expr;
END IF;

举个例子:

SELECT COUNT(DISTINCT INDEX_NAME) INTO CNT FROM USER_INDEXES WHERE TABLE_NAME=C1.TABLE_NAME;
    IF CNT > 1 THEN
        FOR C2 IN (SELECT DISTINCT INDEX_NAME FROM USER_INDEXES WHERE TABLE_NAME=C1.TABLE_NAME) LOOP
        EXECUTE IMMEDIATE ‘ALTER INDEX ‘ || C2.INDEX_NAME || ‘ REBUILD‘;
        END LOOP;
    ELSIF CNT = 1 THEN
        EXECUTE IMMEDIATE ‘ALTER INDEX ‘ || C2.INDEX_NAME || ‘ REBUILD‘;
    ELSE
        DBMS_OUTPUT.PUT_LINE(C1.TABLE_NAME||‘ THERE IS NO INDEXES NEED TO REBUILDING‘);
    END IF;

本文出自 “LinuxOracle” 博客,请务必保留此出处http://onlinekof2001.blog.51cto.com/3106724/1615011

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。