0

出于好奇,我试图在 PL/SQL 块中使用 COMMENT 语句。我在 Oracle 11g 数据库上使用 Oracle APEX 18.2,在 SQL Workshop 中我可以自己执行命令,但如果我将它包装在 BEGIN ... END 块中,则会收到如下错误消息:

ORA-06550: line 4, column 18: PLS-00103: Encountered the symbol "ON" when expecting one of the following: : = . ( @ % ;

有效的命令示例:

COMMENT ON COLUMN employees.job_id IS 'comment';

导致错误消息的命令示例:

BEGIN  
    COMMENT ON COLUMN employees.job_id IS 'comment';  
END;

我假设 COMMENT 不是存储过程中允许的语句,但我无法找到支持这一点的证据。我是正确的吗?如果是这样,这是否记录在任何地方?

感谢@GMB 提供书面示例的答案。

4

1 回答 1

2

考虑:

create table employees(job_id int);

begin  
    comment on column employees.job_id is 'comment'
end;
/
ora-06550:第 2 行,第 13 列:
pls-00103:在期待以下情况之一时遇到符号“on”:

   := 。(@%;
begin  
    execute immediate 'comment on column employees.job_id is ''comment''' ;
end;
/
1 行受影响

db<>在这里摆弄

于 2019-11-18T15:37:03.733 回答