SQL-92标准 中文翻译 联系客服

发布时间 : 星期五 文章SQL-92标准 中文翻译更新完毕开始阅读7ec1e684dd3383c4bb4cd2cb

下列标准包含的规定构成该国际标准的规定。该版本自发布之时有效。所有的标准都受制于修订,鼓励基于该国际标准各方达成协议,调查应用如下所列最新版国际标准的可能性。IEC和ISO的成员维护当前有效国际标准的登记。

- ISO/IEC 646:1991, Information technology-ISO 7-bit coded character set for information interchange.

- ISO/IEC 1539:1991, Information technology-Programming languages-Fortran. - ISO 1989:1985, Programming languages-COBOL. (Endorsement of ANSI X3.23-1985). - ISO 2022:1986, Information technology-ISO 7-bit and 8-bit coded character sets-code extension techniques.

- ISO 6160:1979, Programming languages-PL/I (Endorsement of ANSI X3.53-1976). - ISO 7185:1990, Information technology-Programming languages-Pascal. - ISO 8601:1988, Data elements and interchange formats - Information interchange-Representation of dates and times.

- ISO 8652:1987, Programming languages-Ada. (Endorsement of ANSI/MIL-STD-1815A-1983). - ISO/IEC 8824:1990, Information technology-Open Systems Interconnection-Specification of Abstract Syntax Notation One (ASN.1).

- ISO/IEC 9579-2:[1], Information technology - Open Systems Interconnection - Remote Database Access, Part 2: SQL special-ization.

- ISO/IEC 9899:1990, Programming languages - C.

- ISO/IEC 10206:1991, Information technology-Programming languages-Extended Pascal. - ISO/IEC 10646:[1], Information technology-Multiple-octet coded character set. ____________________ [1] 即将发布

- ISO/IEC 11756:[1], Information technology-Programming languages-MUMPS.

定义、记号和约定

3.1 定义

为了该国际标准的目的,应用以下定义。

3.1.1 摘自ISO/IEC 10646标准的定义

该国际标准使用的以下条款,摘自ISO/IEC 10646标准: a) character字符 b) octet字节

c) variable-length coding 可变长度编码 d) fixed-length coding 固定长度编码

3.1.2 摘自ISO 8601标准的定义

该国际标准使用的以下条款,摘自ISO 8601标准: a) Coordinated Universal Time (UTC) b) date (\

3.1.3 该国际标准提供的定义

该国际标准定义以下条款:

a) 可赋值: 值或数据类型的特征。这些值或数据类型可以赋值给特定数据类型的数据实例。

b) (集合的)基数: 集合中对象数目. 对象可以相同.

c) 字符表: 用于明确的目的和应用的字符的集合。每个字符表都有一个隐含默认的整理序列。

d) 可压缩性: 字符串数据项的属性,用于管理如何确定该项的整理序列。

e) 排序规则; 整理序列:对两个可比较的字符串的排序方法. 每个字符集都有一个默认的整理序列.

f) 可比较: 两个数据对象的特征,允许一个对象的值和另一个对象的值进行比较。 同样对于数据类型:只有当两个数据类型的对象可以比较,才能说这两个数据类型可以比较。

g) 说明符: SQL对象的编码描述。 它包含了该对象符合SQL实现要求的所有信息。

h) 互异: 如果两个值,都为空值,或者根据第8.2条 “ 谓词比较 ”,它们相等,就认为这两个值相同。否则,它们是互异的。在两行(或部分行)中,只要对应的值有一个是不同的,则认为两行(或部分行)是互异的。

i) 重复: 当且仅当两个或两个以上的值或行是相同的,才能认为它们是重复的。

j) 二元运算符: 具有两个操作数(左操作数和右操作数)的操作符。 在该国际标准中一个二元操作符的例子是\——减号操作符,该操作符说明左边操作数减去右边操作数。

k) 使用形式: 在字符串中表现字符的约定或编码。有些使用形式是定长的编码,有些是可变长度的编码。

l) 使用形式转换: 将字符串从一种使用形式转换为另一种使用形式的方法。

m) 实现定义: 不同的SQL实现之间可能不同,由实现者详细说明每个特别的SQL实现。

n) 实现依赖: 不同的SQL实现之间可能不同,不由该国际标准说明,也不要求实现者说明每个特别的SQL实现。

o) 一元操作符: 只有一个操作数的操作符. 在该国际标准中一元算术操作符的一个例子是\——负号操作符,该操作符说明操作数为负数。

p) 多重集: 对象的无序集合,对象可以相同,集合可以为空。

q) n元操作符: 具有多个操作数的操作符。在该国际标准中的n元操作符的例子是COALESCE。

r) 空值 (null): 一个特殊的值或者标志,用来表明不含任何数据值。

s) 持久: 除非有意去销毁,否则会一直存在。引用和级联动作是有意的。SQL事务(见子条款 4.28,“SQL事务”)或SQL会话(见子条款 4.30,“SQL会话”)结束时附带的动作不是有意的。

t) 多余的重复: 除了一个以外,其他的重复值或行的多重集。

u) 清单: 见字符表。

v) 序列: 对象的有序集合。对象可以相同。

w) 集: 不同对象的无序集合。该集合可为空。.

x) SQL-实现: 符合该国际标准的数据库管理系统。

y) 转换: 将一个字符表中字符转换成相同或不同字符表中字符的方法。

3.2 记号

该国际标准中使用的语法符号是BNF 的一种扩展版本 (\Normal Form\。

在BNF中,语言的每个语法元素通过一个产生规则定义。产生规则根据由字符,字符串和语法元素组成的规则定义元素。

在该国际标准中使用的BNF的版本,使用以下符号: 符号含义

< > 尖括号,用于分隔字符串,字符串为语法元素的名称,SQL语言的非终结符。

::= 定义操作符。用在生成规则中,分隔规则定义的元素和规则定义。 被定义的元素位于操作符的左边,规则定义位于操作符的右边。

[ ] 方括号表示规则中的可选元素。方括号中的规则部分可以明确指定也可以省略。

{ } 花括号聚集规则中的元素。在花括号中的规则部分必须明确指定。

| 替换操作符。 该竖线表明竖线之后的规则部分对于竖线之前的部分是可替换的。 如果竖线出现的位置不在花括号或方括号内,那么它指定对于该规则定义的元素的一个完整替换项。如果竖线出现的位置在花括号或方括号内,那么它指定花括号对或方括号对最里面内容的替换项。

. . . 省略号表明在规则中省略号应用的元素可能被重复多次。如果省略号紧跟在闭花括号\之后,那么它应用于闭花括号和开花括号\之间的规则部分。如果省略号出现在其他任何元素的后面,那么它只应用于该元素。

!! 介绍普通英文文本。BNF中没有表示某语法元素的定义时使用。

空格用来分隔语法元素。多个空格和多个换行符被视为单个空格。除了上面所给的特殊用途的符号, 在规则中的其它字符和字符串表示其本义。此外,如果定义操作符右边的符号全部由BNF中的符号组成,那么这些符号仅代表其本义,不需要考虑其特殊含义。

花括号对和方括号对内部可以任意嵌套,替换操作符可以出现在嵌套的任何地方。

形成任何语法元素实例的字符串可能产生自该元素的BNF定义,产生过程应用以下步骤: