原文(链接 )
作者按:市场上目前流行多种关系型数据库,我们在学习技术的同时,也应该对她们的发展历史有所了解,这对我们日后把握新技术的方向能起到关键性的指引作用,或许你还能从本文中找到比技术更重要的东西。
在文章开始前,首先要介绍几位对关系型数据库发展起决定性作用的人,尽管我是一个历史唯物主义者,但无法改变我对这些前辈的景仰之情。
1970年IBM研究员Edgar Frank Codd发表了业界第一篇关于关系数据库理论的论文《A Relational Model of Data for Large Shared Data Banks》,首次提出了关系模型的概念。后来Codd又陆续发表多篇文章,奠定了关系数据库的基础。关系模型有严格的数学基础,抽象级别比较高,而且简单清晰,便于理解和使用。但是当时也有人认为关系模型是理想化的数据模型,用来实现DBMS是不现实的,尤其担心关系数据库的性能难以接受,更有人视其为当时正在进行中的网状数据库规范化工作的严重威胁。
为了促进对问题的理解,1974年ACM牵头组织了一次研讨会,会上开展了一场分别以Codd和Bachman为首的支持和反对关系数据库两派之间的辩论。这次著名的辩论推动了关系数据库的发展,使其最终成为现代数据库产品的主流。
1974年,IBM的Don Chamberlin和Ray Boyce将Codd关系数据库的12条准则的数学定义以简单的关键字语法表现出来,里程碑式地提出了SQL(Structured Query Language)语言。
SQL语言的功能包括查询、操纵、定义和控制,是一个综合的、通用的关系数据库语言,同时又是一种高度非过程化的语言,只要求用户指出做什么而不需要指出怎么做。SQL集成实现了数据库生命周期中的全部操作。自产生之日起,SQL语言便成了检验关系数据库的试金石,而SQL语言标准的每一次变更都指导着关系数据库产品的发展方向。
在SQL语言取得进展的同时,IBM研究中心于1973年开始着手SystemR项目。其目标是论证一个全功能关系DBMS的可行性。该项目结束于1979年,完成了第一个实现SQL的DBMS。1986年,ANSI把SQL作为关系数据库语言的美国标准,同年公布了标准SQL文本。目前SQL标准有3个版本。基本SQL定义是ANSIX3135-89,"Database Language - SQL with Integrity Enhancement"[ANS89],一般叫做SQL-89。SQL-89定义了模式定义、数据操作和事务处理。SQL-89和随后的ANSIX3168-1989,"DatabaseLanguage-EmbeddedSQL"构成了第一代SQL标准。ANSIX3135-1992[ANS92]描述了一种增强功能的SQL,现在叫做SQL-92标准。SQL-92包括模式操作,动态创建和SQL语句动态执行、网络环境支持等增强特性。在完成SQL-92标准后,ANSI和ISO即开始合作开发SQL3标准。SQL3的主要特点在于抽象数据类型的支持,为新一代对象关系数据库提供了标准。
作者按:市场上目前流行多种关系型数据库,我们在学习技术的同时,也应该对她们的发展历史有所了解,这对我们日后把握新技术的方向能起到关键性的指引作用,或许你还能从本文中找到比技术更重要的东西。
在文章开始前,首先要介绍几位对关系型数据库发展起决定性作用的人,尽管我是一个历史唯物主义者,但无法改变我对这些前辈的景仰之情。
--Edgar Frank Codd:关系数据库之父。
--Don Chamberlin:SQL之父。SQL 语言的创造者之一,也是 XQuery 语言的创造者之一。
--Donald J. Haderle:DB2之父,IBM CTO、副总裁。
--Larry Ellison:Oracle公司创始人,世界第二大软件公司的CEO。
--Mark Hoffman:SYBASE公司创始人。
--Bob Epstein:SYBASE公司创始人。
--Mitchell E. Kertzman:PowerSoft公司创始人,后为SYBASE公司并购。
1970年IBM研究员Edgar Frank Codd发表了业界第一篇关于关系数据库理论的论文《A Relational Model of Data for Large Shared Data Banks》,首次提出了关系模型的概念。后来Codd又陆续发表多篇文章,奠定了关系数据库的基础。关系模型有严格的数学基础,抽象级别比较高,而且简单清晰,便于理解和使用。但是当时也有人认为关系模型是理想化的数据模型,用来实现DBMS是不现实的,尤其担心关系数据库的性能难以接受,更有人视其为当时正在进行中的网状数据库规范化工作的严重威胁。
为了促进对问题的理解,1974年ACM牵头组织了一次研讨会,会上开展了一场分别以Codd和Bachman为首的支持和反对关系数据库两派之间的辩论。这次著名的辩论推动了关系数据库的发展,使其最终成为现代数据库产品的主流。
1974年,IBM的Don Chamberlin和Ray Boyce将Codd关系数据库的12条准则的数学定义以简单的关键字语法表现出来,里程碑式地提出了SQL(Structured Query Language)语言。
SQL语言的功能包括查询、操纵、定义和控制,是一个综合的、通用的关系数据库语言,同时又是一种高度非过程化的语言,只要求用户指出做什么而不需要指出怎么做。SQL集成实现了数据库生命周期中的全部操作。自产生之日起,SQL语言便成了检验关系数据库的试金石,而SQL语言标准的每一次变更都指导着关系数据库产品的发展方向。
在SQL语言取得进展的同时,IBM研究中心于1973年开始着手SystemR项目。其目标是论证一个全功能关系DBMS的可行性。该项目结束于1979年,完成了第一个实现SQL的DBMS。1986年,ANSI把SQL作为关系数据库语言的美国标准,同年公布了标准SQL文本。目前SQL标准有3个版本。基本SQL定义是ANSIX3135-89,"Database Language - SQL with Integrity Enhancement"[ANS89],一般叫做SQL-89。SQL-89定义了模式定义、数据操作和事务处理。SQL-89和随后的ANSIX3168-1989,"DatabaseLanguage-EmbeddedSQL"构成了第一代SQL标准。ANSIX3135-1992[ANS92]描述了一种增强功能的SQL,现在叫做SQL-92标准。SQL-92包括模式操作,动态创建和SQL语句动态执行、网络环境支持等增强特性。在完成SQL-92标准后,ANSI和ISO即开始合作开发SQL3标准。SQL3的主要特点在于抽象数据类型的支持,为新一代对象关系数据库提供了标准。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




