1、对象 -关系数据库及其语言2008.09目录n 对象 -关系数据库的兴起n 关系数据库的弱点n 对象 -关系数据库的兴起n 对象 -关系数据模型及 SQL:1999n 背景n 标准发展过程n SQL:1999内容1.1 关系数据库的弱点( 1)n 自 20世纪 80年代以来,关系数据库管理系统( RDBMS)一直是数据库管理系统( DBMS)的主流,其在数据库产品市场中一直占据统治地位。 RDBMS的优越性主要体现在 :n 关系数据模型( relational data model)对传统的结构化数据( structured data)提供了 简单、有效的建模 ( modeling) 与表示
2、( representation) 机制 ;n SQL语言以说明性( declarative)的联想式访问( associative access)方式提供了 简便和国际标准的数据查询与操纵机制;n RDBMS提供了完备、高效的服务设施 ,包括索引和存储(indexing & storage)、查询优化( query optimization)、事务管理( transaction management)、安全( security)、完整性( integrity)、触发子( triggers)等;n RDBMS产品 具有广泛的工业基础和完善厂商支持 。1.1 关系数据库的弱点( 2)n 但是,随
3、着数据管理技术应用的拓宽与深入,关系数据库也逐步暴露其 弱点 ,主要表现在:n 有限的数据类型和刻板的数据结构;n 缺少不依赖于属性值的、全系统唯一标识符(类似于 OID);n 不支持用户自定义的或系统可扩充的函数或运算。n 以上弱点的根源在于关系数据模型( relational data model)。 1.2 对象 -关系数据库的兴起n 为克服关系数据库(源于关系数据模型)的弱点, 20世纪 80年代开始,研究界就对关系数据库后的下一代数据库问题进行探讨,研究重点集中在数据模型上。有代表性的数据模型有:n 非第一范式( non-first normal form, NF2)关系数据模型n
4、语义( semantic)数据模型n 面向对象( object-oriented, OO)数据模型n 对象 -关系( object-relational, OR)数据模型 1.2 对象 -关系数据库的兴起n 面向对象和对象 -关系数据模型对数据库工业的影响最大。n (新兴的)厂商推出了对象数据库管理系统( ODBMS)产品,但由于诸多原因(见教材),其并未成为替代 RDBMS的主流产品( mainstream products);主要大厂商( e.g., Oracle, IBM, Microsoft)着眼于对传统的关系数据库进行面向对象扩充,推出了对象 -关系数据库管理系统( ORDBMS)产
5、品,成为支配当前数据库市场的主流产品。n 工业和标准化组织( e.g., ISO&ANSI)已制定ORDBMS数据模型及其数据库语言( SQL3/SQL:1999)的国际标准。 2. 对象 -关系数据模型及 SQL:1999n 2.1 背景 Backgroundn SQL:1999 (formerly known as SQL3, also called Object-Oriented SQL) is a database language for Object-Relational DBMS, e.g., Oracle 8i/9i, Informix Universal Server, IB
6、Ms DB2 Universal Database, and Cloudscapes Cloudscape, etc.2. 对象 -关系数据模型及 SQL:19992.2 标准发展过程 Standards Development Processn SQL法定标准化组织n 美国: ANSI/NCITS H2(以前 X3H2);n 国际: ISO/IEC JTC 1n SQL标准发展过程n (SQL1): SQL-86/SQL-87 SQL-89(minor enhancement)( by ANSI/X3H2, USA )n SQL2: SQL-92 (by ISO & ANSI)n (SQL3
7、): SQL: 1999 (by ISO & ANSI)n n Next steps?2.3 SQL:1999内容n Here is not a complete feature set of SQL:1999, just new features to SQL2.n 划分成 “关系特性 ”与 “面向对象特性 ”两部分。 PART I 关系特性 Relational Features n 新数据类型 New Data Typesn 新谓词 New Predicatesn 新语义 New Semantics n 增强的安全机制 Enhanced Securityn 主动数据库 Active Database