首页 > 解决方案 > 将评论或注释块添加到视图顶部?

问题描述

我的部门经常在我们的程序顶部放置一个注释块,解释程序的基本目的,以及一些修改历史和相关的工单编号。我想对我正在创建的一些新视图做同样的事情。这可能吗?

我尝试将注释块放置在 CREATE OR REPLACE 之前和之后的各个位置,但似乎选择上方的任何注释行都被删除了。我们正在使用 Oracle 和 PL/SQL Developer。

/*
PURPOSE
MULTI-LINE COMMENTS
WORK ORDER NUMBERS FOR MODIFICATIONS 
ETC
*/

CREATE OR REPLACE VIEW SAMPLE_VIEW AS
SELECT     SYSDATE
FROM       DUAL  

我没有收到任何错误消息。注释在保存的 sql 文件中可见,但在您右键单击并在 PL/SQL Developer 中查看视图时不可见。任何帮助将不胜感激。

标签: sqloracle

解决方案


声明开始于create。在此之前的任何内容都不是视图定义的一部分,并且会被数据库忽略。(对于过程或包也是如此:数据库忽略create or replace关键字之前的注释。)

解决方案很简单:将注释文本移动到视图正文中。

CREATE OR REPLACE VIEW SAMPLE_VIEW AS
    SELECT   
/*
PURPOSE
MULTI-LINE COMMENTS
WORK ORDER NUMBERS FOR MODIFICATIONS 
ETC
*/
      SYSDATE AS DATE1
FROM       DUAL   

注意注释必须嵌入到查询中,在 SELECT 关键字之后,否则编译器会将其关闭。坦率地说,那是线轴,但就是这样。

另外,请记住,我们可以使用 COMMENT 命令添加关于数据库对象(表或表列、统一审计策略、版本、索引类型、物化视图、挖掘模型、运算符或视图)的注释。这比在查询中嵌入注释更干净,并将视图视为表,这似乎是惯用的,而不是 PL/SQL 单元。了解更多


推荐阅读