转自:http://blog.itpub.net/22990797/viewspace-750157/

Oracle文档中用到了两种表达语法的方法,语法图和BNF。

BNF, Backus-Naur Form,中文是巴科斯范式:,它是由约翰·巴科斯(John Backus)和彼得·诺尔(Peter Naur)引入的用来描述计算机语言语法的符号集。

首先来看语法图。读语法图,要从左到右,顺着箭头读。

不同形状的含义:

  • 长方形中的大写词语,命令。
  • 椭圆形中的小写词语,参数。
  • 圆形中,标点符号、操作符、分隔符、终止符。

如果图有几条路径,可以随便选择一条,每条都是正确的语法。

  • 主路径(Main Path):箭头指向的一条直线。
  • 必选关键词:可以是只有一个图形,说明必选这一个;也可以是垂直排列的几个图形,说明必选其一。
  • 可选关键词:在主路径之外就是可选的。
  • 语法循环(Sytax Loop):对一种语法循环使用。
  • 标示符规则:标示符不能超过30字符,必须以字母开头。标示符不区分大小写,除非在双引号内。

每个语法图都有一个指向同义的BNF表达式的链接。

BNF表达式用到的符号含义:

  • [],可选项
  • {},必选其一
  • |,分隔不同选项
  • …,可重复语法
  • 分隔符,不同之前四个其他分隔符要照其原样输入
  • 粗体,粗体的是关键字,必须照其原样输入;非大写字符,是占位符,不需原样输入,得用其他值代替。

本文是SQL Language Reference的附录A How to Read Syntax Diagrams 的读书笔记,是直接从英文翻译过来的,可能只有我自己看的懂。但读完这一节后,读懂语法图对我来说再没有难度了。

https://docs.oracle.com/cd/E24693_01/server.11203/e17118/ap_syntx.htm

【转】如何读懂Oracle文档中的语法图的更多相关文章

  1. 如何读懂Oracle文档中的语法图(转)

    本文转载自:http://kyle.xlau.org/posts/syntax-diagrams.html Oracle文档中用到了两种表达语法的方法,语法图和BNF. BNF, Backus-Nau ...

  2. java使用正则从爬虫爬的txt文档中提取QQ邮箱

    我的需求是从一堆文档中提取出qq邮箱,写了这篇帖子,希望能帮助和我有一样需求的人,谢谢!...... import java.io.BufferedReader; import java.io.Fil ...

  3. Matlab中fread函数的高级使用方法及其帮助文档中容易引起歧义的地方

    参考资料:http://cn.mathworks.com/help/matlab/ref/fread.html 注意:参考资料针对的Matlab版本号R2015a,我使用的是R2013b. Matla ...

  4. [daily][troubleshoot][archlinux][wps][font] wps文档中的图内容无法显示中文

    序 用linux作为工作生产环境的几个需要解决的问题之一是:文档协作,即如何兼容Micro$oft Office格式的文档. 我一般的工作方式是:在linux下创建一个win7的虚拟机,安装常用的wi ...

  5. Paragraph 对象'代表所选内容、范围或文档中的一个段落。Paragraph 对象是 Paragraphs 集合的一个成员。Paragraphs 集合包含所选内容、范围或文档中的所有段落。

    Paragraph 对象'代表所选内容.范围或文档中的一个段落.Paragraph 对象是 Paragraphs 集合的一个成员.Paragraphs 集合包含所选内容.范围或文档中的所有段落. 方法 ...

  6. MVC架构下,使用NPOI读取.DOCX文档中表格的内容

    1.使用NPOI,可以在没有安装office的设备上读wiod.office.2.本文只能读取.docx后缀的文档.3.MVC架构中,上传文件只能使用form表单提交,转到控制器后要依次实现文件上传. ...

  7. 2018-10-04 [日常]用Python读取word文档中的表格并比较

    最近想对某些word文档(docx)的表格内容作比较, 于是找了一下相关工具. 参考Automate the Boring Stuff with Python中的word部分, 试用了python-d ...

  8. 用python从符合一定格式的txt文档中逐行读取数据并按一定规则写入excel(openpyxl支持Excel 2007 .xlsx格式)

    前几天接到一个任务,从gerrit上通过ssh命令获取一些commit相关的数据到文本文档中,随后将这些数据存入Excel中.数据格式如下图所示 观察上图可知,存在文本文档中的数据符合一定的格式,通过 ...

  9. php解析word,获得文档中的图片

    背景 前段时间在写一个功能:用原生php将获得word中的内容并导入到网站系统中.因为文档中存在公式,图片,表格等,因此写的比较麻烦. 思路 大体思路是先将word中格式为doc的文档转化为docx, ...

随机推荐

  1. 关于UI测试

    分为UI逻辑测试和UI显示测试两部分.要根据不同的面板状态进行测试 状态 -UI逻辑 -显示测试 一般优先做UI逻辑测试,后做显示测试.因为显示内容要经常变动,而且看的始终比代码测的准.去测显示测试会 ...

  2. 解决方式-在Mac系统中,Eclipse无法导入含有中文路径的project

    1.改动eclipse.app/Contents/Info.plist.查找 <key>CFBundleExecutable<key> 在其上方加入下面代码 <? xml ...

  3. 解决Java连接MySQL存储过程返回参数值为乱码问题

    先说MySQL的字符集问题.Windows下可通过修改my.ini内的 [mysql] default-character-set=utf8    //客户端的默认字符集 在MySQL客户端工具中输入 ...

  4. 【转】服务器添加新用户用ssh-key 登录,并禁用root用户 密码登录

    [转]Linux最高权限用户root,默认可以直接登录sshd.为了提高服务器的安全度,需要对它进行禁止,使得攻击者无法通过暴力破解来获取root权限.  ps: 以下内容皆非原创,只是个人的一个实践 ...

  5. cocos2d-x JsonBox 读写

    #include "JsonBox.h" std::string path = "test.json”; //注意引入路径 path = cocos2d::CCFileU ...

  6. Python深入学习之内存管理

    语言的内存管理是语言设计的一个重要方面.它是决定语言性能的重要因素.无论是C语言的手工管理,还是Java的垃圾回收,都成为语言最重要的特征.这里以Python语言为例子,说明一门动态类型的.面向对象的 ...

  7. jquery和css3打造超梦幻的三维动画背景

    今天为大家带来的是一款由jquery和css3实现的超级梦幻的背景效果.绿色的小原点由远到近,由近到远一种飞跃效果.效果非常好看,我们一起看下效果图: 在线预览   源码下载 我们一起看下实现的代码. ...

  8. 如何设置Windows server 2008 R2登陆密码?

    我第一次用该系统,登陆系统需要设置新密码,科沃怎么设置新密码都是新密码不符合条件,不允许我创建,该怎么办? 答案: 至少6个字符,要包括大小写.符号.数字这四组字符中的三组.如12abAB是有效密码, ...

  9. 【WPF】XAML引入资源和在C#代码中动态添加样式

    转载自: http://blog.csdn.net/honantic/article/details/48781543 XAML引入资源参考这里: http://blog.csdn.net/qq_18 ...

  10. RP2833 FPGA对应串口标识

    U41 FPGA-TXD0         /dev/ruart0        FPGA-RXD0      U40 FPGA-TXD1         /dev/ruart1 FPGA-RXD1