sql - 将评论或注释块添加到视图顶部?
问题描述
我的部门经常在我们的程序顶部放置一个注释块,解释程序的基本目的,以及一些修改历史和相关的工单编号。我想对我正在创建的一些新视图做同样的事情。这可能吗?
我尝试将注释块放置在 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 中查看视图时不可见。任何帮助将不胜感激。
解决方案
声明开始于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 单元。了解更多。
推荐阅读
- sql - 我有一个包含不同部门的示例表,现在的场景是,需要在包含所有列的表中显示重复次数最高的部门
- jenkins - 未能从声明性管道触发自由式作业
- docker - Google 上的 nginx-ingress k8s 没有 IP 地址
- react-native - React Native - 如何检测主页按钮是否被按下?
- ios - git终端提交错误
- excel - Excel根据字符串列创建组ID
- php - 使用后值php验证数组
- mysql - 使用“*”在选择中添加一个额外的列
- java - 验证不适用于 Spring Boot 和 Hibernate
- azure - 将置信度分数添加到 Azure 认知服务 Web 应用