当前位置: 首页 > 面试题库 >

SQL中是否存在与供应商无关的多行注释定界符?

姬弘文
2023-03-14
问题内容

从SQL语句进行编辑,构建或挑选时,我发现自己正在与四种流行的数据库工具之一进行交互。我一直在求助于DB2和Informix的单行注释。我在vim中创建了宏,以使其效率更高一些,但是我想知道我是否在努力工作。


问题答案:

C样式注释在SQL 2003和SQL 2008中是标准的(但在SQL 1999或更早版本中不是)。以下DBMS均支持C样式注释:

  • Informix
  • PostgreSQL
  • MySQL
  • Oracle
  • DB2
  • Sybase
  • Ingres
  • Microsoft SQL Server
  • SQLite (3.7.2 and later)
  • Teradata and Aster

那不是每个可能的DBMS,但或多或​​少是每个主要的SQL DBMS。(我愿意添加有关任何其他支持或不支持C样式注释的DBMS的注释。)

因此,SQL 2003标准记录了注释符号:

<comment> ::= <simple comment> | <bracketed comment>

<simple comment> ::=
    <simple comment introducer> [ <comment character> ... ] <newline>

<simple comment introducer> ::=
    <minus sign> <minus sign> [ <minus sign> ... ]

<bracketed comment> ::=
    <bracketed comment introducer> <bracketed comment contents>
    <bracketed comment terminator>

<bracketed comment introducer> ::= <slash> <asterisk>

<bracketed comment terminator> ::= <asterisk> <slash>

<bracketed comment contents> ::= [ { <comment character> | <separator> }... ]

<comment character> ::= <nonquote character> | <quote>

IBM Informix Dynamic Server(IDS或Informix)支持C样式注释。它还支持’ { ... }‘作为可能的多行注释,除非在上下文中有其他含义(即其他内容是LIST或SET或MULTISET文字)。(您可能会发现DB-
Access被C样式的注释弄糊涂了;这是一个单独的问题。)



 类似资料:
  • 我观看了本Spring开机教程:https://javabrains.io/courses/spring_bootquickstart/lessons/Creating-a-Spring-Data-JPA-Repository 它将@Entity注释放在类名之前。当我试图在我的代码中这样做时,我得到一个错误,说“无法解析@Entity”。 这是我的pom.xml文件: 你知道有什么问题吗?

  • 每个命令或Dockerfile中的每个命令都创建一个容器。如果容器不再运行,仍然可以使用看到它。 我是否应该关注一个庞大的未运行容器列表?是否应该在未运行的容器上发布? 我不确定这些未运行的容器会导致什么性能或内存/存储损失。

  • 问题内容: 在界面中添加Javadoc注释并在实现中添加非Javadoc注释是否正确? 当您自动生成注释时,大多数IDE都会为实现生成非JavaDoc注释。具体方法不应该有描述吗? 问题答案: 对于仅实现(不是覆盖)的方法,请确定为什么不这样做,尤其是如果它们是公共的。 如果您处于压倒一切的情况,并且打算复制任何文本,那么绝对不能。复制是导致差异的必经之路。结果,用户将基于检查父类型还是子类型中的

  • 本文向大家介绍PowerShell单行注释、多行注释、块注释的方法,包括了PowerShell单行注释、多行注释、块注释的方法的使用技巧和注意事项,需要的朋友参考一下 PowerShell的注释符分为行注释符和块注释符。行注释符使用井号(#)引起一行;块注释符使用“<#”和 “#>”来引起一段注释。 行注释符 举例如下: 块注释符、多行注释 举例如下: 这是小编每次写脚本之前,都会定义的一段关于脚

  • 本文向大家介绍Perl中的单行注释和多行注释语法,包括了Perl中的单行注释和多行注释语法的使用技巧和注意事项,需要的朋友参考一下 同其他大多数编程语言一样,Perl中的单行注释也是#开头,例如: 但多行注释,不同的语言有不同的注释方式,比如说: Java,C/C++: Python: Ruby: Shell: Perl: 多行注释为: 说明:第一个等号必须紧跟一个字符! 比如说: