1SQLServer2008--天府浪子2015CRY在深入学习数据库系统之前,熟悉并掌握数据库的基础知识具有很大的帮助。本节将会介绍数据库技术的原理及应用,包括数据库基本概念、数据库开发模块、关系数据库组成,通过对数据库系统的架构剖析,展示出数据库技术的内幕。项目一:了解数据库2SQLServer2008--天府浪子2015CRY任务描述:了解数据库;认识数据库系统模型;认识关系数据库3SQLServer2008--天府浪子2015CRY一.了解数据库数据库其实就是数据存放的地方,是需要长期存放在计算机内,有组织的、可共享的数据集合,即在计算机系统中按一定的数据模型组织、存储和使用的相关联的数据集合称为数据库。数据库中的数据按照一定的数据模型组织、描述和存储,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。它不仅包括描述事物的数据本身,还包括相关事物之间的联系。数据库中的数据也是以文件的形式存储在存储介质上的,它是数据库系统操作的对象和结果。数据库中的数据具有集中性和共享性。集中性是指把数据库看成性质不同的数据文件的集合,其中的数据冗余很小。共享性是指多个不同用户使用不同语言,为了不同应用目的可同时存取数据库中的数据。数据库中的数据由数据库管理系统进行统一管理和控制,用户对数据库进行的各种数据操作都是通过它实现的。4SQLServer2008--天府浪子2015CRY数据库管理系统(DatabaseManagementSystem,DBMS)是数据库系统的核心,是为数据库的建立、使用和维护而配置的软件。它建立在操作系统的基础之上,是位于操作系统与用户之间的一层数据管理软件,主要功能是对数据库进行定义、操作、控制和管理。数据库管理系统由操作系统支持,同时,数据库管理系统又支持应用系统。用户发出的或应用程序中的各种操作数据库数据的命令都要通过数据管理系统来执行。除此之外,数据库管理系统还承担着数据库的维护工作,能够按照数据库管理员所规定的要求,保证数据库的安全性和完整性。5SQLServer2008--天府浪子2015CRY二.认识数据库系统模型根据具体数据存储需求的不同,数据库可以使用多种类型的系统模型(模型是指数据库管理系统中数据的存储结构),其中较为常见的有层次模型(HierarchicalModel)、网状模型(NetworkModel)和关系模型(RelationModel)3种。6SQLServer2008--天府浪子2015CRY层次模型层次型数据库使用结构模型作为自己的存储结构。这是一种树型结构,它由结点和连线组成,其中结点表示实体,连线表示实体之间的关系。在这种存储结构中,数据将根据相应的类别存储在不同的层次之下,如图所示:7SQLServer2008--天府浪子2015CRY优点:数据结构类似金字塔,不同层次之间的关联性直接而且简单;缺点:由于数据纵向发展,难以建立横向关系,数据可能会重复出现,造成管理和维护不便。8SQLServer2008--天府浪子2015CRY网状模型在这种存储结构中,数据记录将组成网中的节点,而记录和记录之间的关联组成节点之间的连线,从而构成了一个复杂的网状结构,如图所示。9SQLServer2008--天府浪子2015CRY优点:它很容易地反映实体之间的关联,同时还避免了数据的重复性;缺点:这种关联错综复杂,而且当数据库逐渐增多时,将很难对结构中的关联进行维护。尤其是当数据库变得越来越大时,关联性的维护会非常复杂。10SQLServer2008--天府浪子2015CRY关系模型关系型数据库是基于关系模型的数据库,它使用的存储结构是多个二维表格。在二维表格中,每一行称为一条记录,用来描述一个对象的信息;每一列称为一个字段,用来描述对象的一个属性。数据表与数据表之间存在相应的关联,这些关联将被用来查询相关的数据,如图所示。11SQLServer2008--天府浪子2015CRY优点:结构简单、格式惟一、理论基础严格,而且数据表之间是相对独立的,它们可以在不影响其他数据表的情况下进行数据的增加、修改和删除。在进行查询时,还可以根据数据表之间的关联性,从多个数据表中查询抽取相关的信息。这种存储结构是目前市场上使用最广泛的数据模型,使用这种存储结构的数据库管理系统很多,例如本书介绍的Microsoft公司产品SQLServer2008也是其中之一。12SQLServer2008--天府浪子2015CRY三.认识关系数据库关系数据库(RelationalDatabase,RDB)就是基于关系模型的数据库。在计算机中,关系数据库是数据和数据库对象的集合,而管理关系数据库的计算机软件称为关系数据库管理系统(RelationalDatabaseManagementSystem,RDBMS)。13SQLServer2008--天府浪子2015CRY1.关系数据库的组成关系数据库是由数据表和数据表之间的关联组成。其中,数据表通常是一个由行和列组成的二维表,每一个数据表分别说明数据库中某一特定的方面或部分的对象及其属性。数据表中的行通常叫做记录或元组,它代表众多具有相同属性的对象中的一个;数据库表中的列通常叫做字段或属性,它代表相应数据库表中存储对象的共有属性。如表,是学习学生信息列表。14SQLServer2008--天府浪子2015CRY15SQLServer2008--天府浪子2015CRY从这个学生列表中可以看到,该表中的数据都是学生的相关信息。其中,表中的每条记录代表一名学生的完整信息,每一个字段代表学生的一方面信息,这样就组成了一个相对独立于其他数据表之外的学生信息列表。用户可以对这个表进行添加、删除或修改记录等操作,而完全不会影响到数据库中其他的数据表。16SQLServer2008--天府浪子2015CRY2.关系数据库基本术语关系数据库的特点在于它将每个具有相同属性的数据独立存在一个表中。对任何一个表来说,用户可以新增、删除和修改表中的数据,而不会影响表中的其他数据。下面来了解一下关系数据库中的一些基本术语:键码(Key)它是关系模型中的一个重要概念,在关系中用来标识行的一列或多列。候选关键字(CandidateKey)它是惟一地标识表中一行而又不含多余属性的一个属性集。主关键字(PrimaryKey)它是被挑选出来,作为表行的惟一标识的候选关键字,一个表中只有一个主关键字,主关键字又称为主键。公共关键字(CommonKey)在关系数据库中,关系之间的联系是通过相容或相同的属性或属性组来表示的。如果两个关系中具有相容或相同的属性或属性组,那么这个属性或属性组被称为这两个关系的公共关键字。外关键字(ForeignKey)如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外关键字。由此可见,外关键字表示了两个关系之间的联系,外关键字又称作外键。17SQLServer2008--天府浪子2015CRY3.关系数据库对象数据库对象是一种数据库组件,是数据库的主要组成部分。在关系数据库管理系统中,常见的数据库对象包括表(Table)、索引(Index)、视图(View)、图表(Diagram)、默认值(Default)、规则(Rule)、触发器(Trigger)、存储过程(StoredProcedure)和用户(User)等。18SQLServer2008--天府浪子2015CRY关系模型的完整性规则根据关系数据理论和Codd准则的定义,一种语言必须能处理与数据库的所有通信问题,这种语言有时也称为综合数据专用语言。该语言在关系型数据库管理系统中就是SQL(StructuredQueryLanguage、结构化查询语言)。SQL的使用主要通过数据操纵、数据定义和数据管理三种操作实现。关系模型的完整性规则是对数据的约束。关系模型提供了三类完整性规则:实体完整性规则、参照完整性规则和用户自定义完整性规则。其中实体完整性规则和参照完整性规则是关系模型必须满足的完整性约束条件,称为关系完整性规则。19SQLServer2008--天府浪子2015CRY在关系模型中存在有4类完整性约束,包括实体完整性、空值(null)、参照完整性和用户自定义完整性。范式理论是数据库设计的一种理论指南和基础,它不仅能够判断数据库设计的优劣,而且还可以预测数据库系统可能出现的问题。而E-R方法则是一种用来在数据库设计过程中表示数据库系统结构的方法。他的主导思想是使用实体、实体的属性以及实体之间的关系来表示数据库系统结构。20SQLServer2008--天府浪子2015CRY任务二:初步认识SQLServer2008任务描述:初步了解SQLServer2008;认识SQLServer2008体系结构21SQLServer2008--天府浪子2015CRY一.认识SQLServer2008SQLServer2008是一个典型的关系型数据库管理系统,以其强大的功能、简便的操作、友好的界面和可靠的安全性等,得到很多用户的认可,目前已应用在银行、邮电、铁路、财税和制造等众多行业和领域。SQLServer起源于SybaseSQLServer,于1988年推出了第一个版本,这个版本主要是为OS/2平台设计的。Microsoft公司于1992年将SQLServer移植到了WindowsNT平台上。特别是MicrosoftSQLServer7.0的推出,这个版本在数据存储和数据库引擎方面发生了根本性变化,更加确立了SQLServer在数据库管理工具中的主导地位。22SQLServer2008--天府浪子2015CRYMicrosoft公司于2000年发布了SQLServer2000,该版本继承了SQLServer7.0版本的优点,同时又增加了许多更先进的功能,具有使用方便、可伸缩性好、与相关软件集成程度高等优点,可跨越多种平台使用。在2008年中,Microsoft公司发布了MicrosoftSQLServer2008,该版本为各类用户提供了完整的数据库解决方案,可以帮助用户建立自己的电子商务体系,增强用户对外界变化的敏捷反应能力,提高用户的市场竞争力。23SQLServer2008--天府浪子2015CRY最新的SQLServer2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,提供了更安全、更具延展性、更高的管理能力,使得它成为至今为止的最强大和最全面的SQLServer版本。其主要功能说明如下:1.保护数据库咨询SQLServer2008本身将提供对整个数据库、数据表与Log加密的机制,并且程式存取加密数据库时,完全不需要修改任何程序。24SQLServer2008--天府浪子2015CRY2.花费更少的时间在服务器的管理操作SQLServer2008将会采用一种PolicyBased管理Framework,来取代现有的Script管理,如此可以花费更少的时间来进行例行性管理与操作。而且透过PolicyBased的统一政策,可以同时管理数千部的SQLServer,以达成企业的一致性管理,而不必对每一台SQLServer去设定新的組态或管理设定。3.增加应用程序稳定性SQLServer2008面对企业关键性应用程序时,将会提供比SQLServer2008更高的稳定性,并简化数据库失败复原的工作,甚至将进一步提供加入额外CPU或内存而不会影响应用程序的功能。25SQLServer2008--天府浪子2015CRY4.系统执行效能最佳化与预测功能SQLServer2008将会继续增强数据库执行效能与预测功能,不但将进一步强化执行效能,并且加入自动收集数据可执行的资料,将其存储在一个中央资料的容器中,而系统针对这些容器中的资料提供了现成的管理报表,可以生成系统现有执行效能与先前历史效能的比较报表,让管理者进一步做管理与分析決策。26SQLServer2008--天府浪子2015CRY二.SQLServer2008体系结构SQLServer2008应用在微软数据平台上,使得