从SQL语句进行编辑,构建或挑选时,我发现自己正在与四种流行的数据库工具之一进行交互。我一直在求助于DB2和Informix的单行注释。我在vim中创建了宏,以使其效率更高一些,但是我想知道我是否在努力工作。
C样式注释在SQL 2003和SQL 2008中是标准的(但在SQL 1999或更早版本中不是)。以下DBMS均支持C样式注释:
那不是每个可能的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样式的注释弄糊涂了;这是一个单独的问题。)
{ ... }