sql与关系数据库理论 是对什么数据库的
一般来说是针对sqlserver的
但是那书里的东西,基本对所有数据库都适用
语法一般也基本都是相通的
所以那个书你可以把它吃透,以后学其他数据库也不是什么难事
数据库原理 关系模式分解
一,由关系R得出码为(Sno,Group)
二,关系R满足第一范式,因为关系模式中存在部分函数依赖,和传递函数依赖.
三,看图
面向对象数据库和关系数据库的区别
以关系数据库为例,SQL语言是一种非过程化的面向集合的语言,它虽然用起来非常简单,但由于是解释实现,效率不如人意。因此许多应用仍然是由高级程序设计语言(如C)来实现的,但是高级程序设计语言是过程化的,而且是面向单个数据的,这使得SQL与它之间存在着不匹配,我们把它叫做“阻抗失配”。不论你是用嵌入式SQL,还是CLI,都需要化很多工夫去完成两种语言之间的相互转化。 但是关系数据库在数据库系统方面发展地非常完善,有强大的管理功能和可操纵性。另外,关系模型具有坚实的数学基础。
面向对象数据库的产生主要是为了解决“阻抗失配”,它强调高级程序设计语言与数据库的无缝连接。什么叫无缝连接,假设你 不用数据库,用C语言编了一个程序,你可以不需要(或基本不需要)任何改动就将它作用于数据库,即你可以用C语言透明访问数据库,就好象数据库根本不存在一样,所以也有人把面向对象数据库理解为语言的持久化。怎么样,听起来挺玄的吧,可是我们自己开发的数据库系统——OSCAR早就做到了这一点。 由于实现了无缝连接,使得面向对象数据库能够支持非常复杂的数据模型,从而特别适用于工程设计领域。打个比方,想象CAD中的一个复杂部件,它可能由成千上万个不同的零件组成,要是用关系模型中的表来表达,得用多少张表啊?而描述这种复杂的部件,正好是高级程序设计语言的强项。
此外,面向对象数据库还吸收了面向对象程序设计语言的思想,如支持类、方法、继承等概念。 面向对象数据库很好地解决了阻抗失配的问题,但它也有缺点。它的缺点正好是关系数据库的强项,由于模型较为复杂(而且缺乏数学基础),使得很多系统管理功能难以实现(如权限管理),也不具备SQL处理集合数据的强大能力。
另一方面,随着多媒体数据的大量出现和应用的日益复杂,关系数据库也在不断吸收面向对象数据库的优点,出现了现在所谓的对象关系型数据库(象ORACLE8i、DB2-5以上都是这种系统)。其主要改进包括支持自定义类型(UDT),方法,继承(目前仅DB2-6支持),和引用(使得对象间可以直接引用,想想原来的关系数据库需要靠连接来实现引用,性能真是惨不忍睹)。 总之,数据库系统发展的趋势是,面向对象数据库和关系数据库将不断融合。而对象关系数据库由于继承了上述两者的优点,已经成为目前数据库发展的主流。
什么是关系数据库
关系数据库是面向关系的。以行和列来存储数据,行和列组成二维表,很多二维表又组成一个数据库。其中表和表之间存在一定的关系。举个例就是:name age genderlyl 12 malezxc 16 female像这样存数据的就是关系数据库因为关系数据的的理论比较完善,所以目前使用的大部分数据库都是关系数据库,例如:access,sqlserver,mysql,oracle,DB2,sybase 同时还有网状数据库,层次数据库,面向对象的数据库 面向对象的数据库目前正在发展阶段,理论不是很成熟,但有些公司已经有产品了。像我之前用过的IBM在AIX上使用的一款面向对象的数据库,其中主要按照类和对象的形式来存储数据。而不是像关系数据库那样一行一行的数据。
sql与关系数据库理论 是对什么数据库的
一般来说是针对sqlserver的
但是那书里的东西,基本对所有数据库都适用
语法一般也基本都是相通的
所以那个书你可以把它吃透,以后学其他数据库也不是什么难事
SQL SERVER 数据库到底有什么具体作用
简单点说
比如你银行卡里的钱就存在数据库里,你的使用记录,去向等等都存在数据库里
再比如现在一刷身份证 就可以知道你的身体证号 姓名等 这些都是存在数据库里
属于关系型数据库的有什么?
当前主流的关系型数据库有Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL等。
关系模型就是指二维表格模型,因而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。
Oracle。
Oracle是1983年推出的世界上第一个开放式商品化关系型数据库管理系统。它采用标准的SQL结构化查询语言,支持多种数据类型,提供面向对象存储的数据支持,具有第四代语言开发工具,支持Unix、Windows NT、OS/2、Novell等多种平台。除此之外,它还具有很好的并行处理功能。Oracle产品主要由Oracle服务器产品、Oracle开发工具、Oracle应用软件组成,也有基于微机的数据库产品。主要满足对银行、金融、保险等企业、事业开发大型数据库的需求。
2.SQL Server。
SQL即结构化查询语言(Structured Query Language,简称为SQL)。SQL Server最早出现在1988年,当时只能在OS/2操作系统上运行。2000年12月微软发布了SQL Server 2000,该软件可以运行于Windows NT/2000/XP等多种操作系统之上,是支持客户机/服务器结构的数据库管理系统,它可以帮助各种规模的企业管理数据。
随着用户群的不断增大,SQL Server在易用性、可靠性、可收缩性、支持数据仓库、系统集成等方面日趋完美。特别是SQL Server的数据库搜索引擎,可以在绝大多数的操作系统之上运行,并针对海量数据的查询进行了优化。目前SQL Server已经成为应用最广泛的数据库产品之一。
由于使用SQL Server不但要掌握SQL Server的操作,而且还要能熟练掌握Windows NT/2000 Server的运行机制,以及SQL语言,所以对非专业人员的学习和使用有一定的难度。
3.Sybase。
1987年推出的大型关系型数据库管理系统Sybase,能运行于OS/2、Unix、Windows NT等多种平台,它支持标准的关系型数据库语言SQL,使用客户机/服务器模式,采用开放体系结构,能实现网络环境下各节点上服务器的数据库互访操作。技术先进、性能优良,是开发大中型数据库的工具。Sybase产品主要由服务器产品Sybase SQL Server、客户产品Sybase SQL Toolset和接口软件Sybase Client/Server Interface组成,还有著名的数据库应用开发工具PowerBuilder。
为什么关系数据库比层次型数据库实用,重要?
层次数据库的数据结构模型,实质上是一种有根结点的定向有序树。层次模型用树型结构表示实体及其之间的联系。在这种模型中,记录类型为结点,由父结点和子结点构成。除根结点以外,任何结点只有一个父结点。
层次模型的优点是简单、直观,处理方便,算法规范;缺点是不能直接表达含有多对多联系的复杂结构。
关系模型用二维表结构来表示实体及其之间联系。关系数据模型以关系数学理论为基础,一个二维表就是一个关系,不仅能描述实体本身,还能反映实体之间的联系。该模型简单,使用方便,应用也最广泛。
层次数据库已经很好地解决了数据的集中和共享问题,但是在数据独立性和抽象级别上仍有很大欠缺。用户在对这两种数据库进行存取时,仍然需要明确数据的存储结构,指出存取路径。而后来出现的关系数据库较好地解决了这些问题。
关系数据库有什么优点呢?
操作方便,
通过应用程序和后台联结,方便了用户的对数据的操作,特别是没有编程基础的人
易于维护
丰富的完整性:实体完整性、参照完整性和用户定义的完整性,大大降低了数据的冗余,和数据不一致的概率
便于访问数据
提供了诸如视图,存储过程,触发器,索引等对象,
更安全,更快捷
权限的分配,使其较以往的数据库在安全性上要高的多,