oracle - ORA-06550 和 PLS-00103 : Encountered the symbol "drop"

标签 oracle plsql ddl oracle12c

这是怎么回事?

DECLARE
  V_COUNT NUMBER(10) := 0;
BEGIN

  SELECT COUNT(*) INTO V_COUNT FROM USER_VIEWS WHERE VIEW_NAME = 'DBO$EVT_APP';

  IF V_COUNT > 0 THEN
    DROP VIEW DBO$EVT_APP;
  END IF;

END;

我收到以下错误:

Error report:
ORA-06550: line 9, column 5:
PLS-00103: Encountered the symbol "DROP" when expecting one of the following: ...

这对我来说看起来像是有效的 SQL。这是我的确切代码,粘贴。

最佳答案

DECLARE
  V_COUNT NUMBER(10) := 0;

    BEGIN

      SELECT COUNT(*) INTO V_COUNT FROM USER_VIEWS WHERE VIEW_NAME = 'DBO$EVT_APP';

      IF V_COUNT > 0 THEN
        execute immediate 'DROP VIEW DBO$EVT_APP';
      END IF;

    END;

关于oracle - ORA-06550 和 PLS-00103 : Encountered the symbol "drop",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35020935/

相关文章:

sql-server - 根据 SQL Server 和 Oracle 中单元格中的内容动态将行转换为列

jquery - Oracle APEX : Rich Text Editor won't work in jQuery dialog box

oracle - 显示 PL/SQL 函数警告

sql - 什么是 DDL 和 DML?

java - Hibernate - 在没有相关表的情况下引用 OneToMany

sql - GROUP BY 后 CASE WHEN

oracle - PL/SQL 原始数据类型变量比较

oracle - 如何使用 SYS_REFCURSOR 处理 NO DATA FOUND - ORACLE

sql - 创建表的最佳实践 DDL 是什么?包含所有对象的单个语句还是创建和更改许多单个语句?

sql - 在 SQL 中计算校验和