如何阅读DB2的语法图-How to read the syntax diagrams

时间:2021-05-04 22:33:51

比起mysql,postgresql的语法结构,db2的语法图差别有点儿大,接触DB2两个半月,大体知道怎么读,但是不能保证解读的一定对,所以还是整理一下:

  • 1.从左至右,从上至下,跟随线的轨迹阅读。
  • 2.两个右向V形符和一个连字符 >>- 标志语法图的起始。
  • 3.两个连字符后面一个右向V形符一个左向V形符 -->< 标志语法图的结束
  • 4.两个连字符和一个右向V形符 --> 表示继续阅读下一行。
  • 5.一个右向V形符和两个连字符 >-- 表示本行接续上一行。
  • 6.语法片段 以一个竖线和两个连字符|--起始,以--|结束。

  • 7.必要的条目 列在水平线(主路径)中

>>-required_item-----------------------------------------------><


  • 8.可选条目在主路径的下面
>>-required_item--+---------------+----------------------------><
'-optional_item-'


  • 8.1.如果一个可选项出现在主路径上面,这个条目对执行没有影响,只是为了提高可读性。
                  .-optional_item-.   
>>-required_item--+---------------+----------------------------><
  • 8.2.多个可选项并列成堆的时候,你可任选其一。

  • 8.2.1.如果是要求你必须选择一个条目的时候,其中一个可选条目会列在主路径中。

>>-required_item--+-required_choice1-+-------------------------><
'-required_choice2-'
  • 8.2.2.如果所列的条目并不一定非要选择一个,那么整个堆 都会并列罗列在主路径下方。
>>-required_item--+------------------+-------------------------><
+-optional_choice1-+
'-optional_choice2-'
  • 8.2.3.如果这个选项中的某一项是默认项,它将会出现在主路径上方,而其他选项则列在主路径的下方。
                  .-default_choice--. 
>>-required_item--+-----------------+--------------------------><
+-optional_choice-+
'-optional_choice-'
  • 9.1一个 在主路径上方的返回至左侧的箭头,表示这个条目可以被重复。在这种情况下,重复的条目必须使用一个或多个空格符分隔开来。
                  .-----------------.   
V |
>>-required_item----repeatable_item-+--------------------------><
  • 9.2.如果重复条目箭头 包含一个逗号,那么你需要使用一个逗号来分隔重复的条目。
                  .-,---------------.   
V |
>>-required_item----repeatable_item-+--------------------------><
  • 9.3.在一个 stack 上方的重复箭头表示你可以 从 stack中选择多次,或者重复指定一个选项。

  • 10.关键词以大写形式出现。他们必须被准确的拼写。变量以小写形式呈现(比如列名)。在语法中它们代表用户提供的名称或者值。

  • 11.如果语法图中含有标点符号,括弧,算术运算符,或 其他的符号 ,你必须把它们作为语法的一部分输入。

  • 12.有时候一个变量就代表了一段语法段。比如,下图中,变量parameter-block代表了 它所表示的 整段的语法:

>>-required_item--| parameter-block |--------------------------><

parameter-block

|--+-parameter1-----------------+-------------------------------|
'-parameter2--+-parameter3-+-'
'-parameter4-'
  • 13.在加重强调号中出现的毗连的项可以以任意顺序指定。
>>-required_item--item1----item2----item3----item4----------><

  上面的语法图表示了 item2 和 item3 可以以任意的顺序指定,下面两个指定顺序都是有效的:

   required_item item1 item2 item3 item4
required_item item1 item3 item2 item4