ch01数据库的基本概念.ppt
《ch01数据库的基本概念.ppt》由会员分享,可在线阅读,更多相关《ch01数据库的基本概念.ppt(59页珍藏版)》请在三一办公上搜索。
1、SQL Server数据库管理及应用,授课教师:刘友军课程性质:任选课,课程简介,授课内容数据库的基础理论SQL Server 2008的使用学时学分32学时理论学时,2学分知识要求计算机基础知识简单的编程基础教材SQL Server实用教程(第3版)(SQL Server 2008 版),郑阿奇 主编,电子工业出版社,第1章 数据库的基本概念,1.1 数据库基本概念,1.2 数据库设计,1.3 数据库应用系统,1.4 SQL Server 2008环境,1.1 数据库基本概念,1.1.1 数据库与数据库管理系统1数据库数据库(DB)是存放数据的仓库,只不过这些数据存在一定的关联,并按一定的格
2、式存放在计算机内。广义上讲,数据不仅包含数字,还包括文本、图像、音频、视频等。例如,把一个学校的学生、课程、学生成绩等数据有序地组织并存放在计算机内,就可以构成一个数据库。因此,数据库由一些持久的相互关联的数据的集合组成,并以一定的组织形式存放在计算机的存储介质中。,1.1 数据库基本概念,2数据库管理系统数据库管理系统(DBMS)是管理数据库的系统,它按一定的数据模型组织数据。DBMS应提供如下功能:(1)数据定义功能:可定义数据库中的数据对象。(2)数据操纵功能:可对数据库表进行基本操作,如插入、删除、修改、查询等。(3)数据的完整性检查功能:保证用户输入的数据满足相应的约束条件。(4)数
3、据库的安全保护功能:保证只有具有权限的用户才能访问数据库中的数据。(5)数据库的并发控制功能:使多个应用程序可在同一时刻并发地访问数据库的数据。(6)数据库系统的故障恢复功能:使数据库在运行出现故障时进行数据库恢复,以保证数据库可靠运行。(7)在网络环境下访问数据库的功能。(8)方便、有效地存取数据库信息的接口和工具。编程人员通过程序开发工具与数据库的接口编写数据库应用程序。数据库系统管理员(DBA,DataBase Adminitrator)通过提供的工具对数据库进行管理。,1.1 数据库基本概念,数据、数据库、数据库管理系统与操作数据库的应用程序,加上支撑它们的硬件平台、软件平台和与数据库
4、有关的人员一起构成了一个完整的数据库系统。图1.1描述了数据库系统的构成。,图1.1 数据库系统的构成,1.1.2 数据模型,(1)层次模型:以树状层次结构组织数据。图1.2所示为某学校按层次模型组织的数据示例。,图1.2 某学校按层次模型组织的数据示例,1.1.2 数据模型,(2)网状模型:每一个数据用一个节点表示,每个节点与其他节点都有联系,这样,数据库中的所有数据节点就构成了一个复杂的网络。图1.3所示为按网状模型组织的数据示例。,图1.3 按网状模型组织的数据示例,1.1.2 数据模型,(3)关系模型:以二维表格(关系表)的形式组织数据库中的数据。例如,在学生成绩管理系统所涉及的学生、
5、课程和成绩三个表中。学生表涉及的主要信息有学号、姓名、性别、出生时间、专业、总学分、备注。课程表涉及的主要信息有课程号、课程名、开课学期、学时和学分。成绩表涉及的主要信息有学号、课程号和成绩。表1.1、表1.2和表1.3分别描述了学生成绩管理系统中学生、课程和成绩这三个表的部分数据。,表1.1 学生表,1.1.2 数据模型,表1.2 课程表,表1.3 成绩表,1.1.2 数据模型,例如,表1.1中的“学号”可唯一标识每一个学生,表1.2中的“课程号”可唯一标识每一门课。表1.3中的“学号”和“课程号”可唯一标识每一个学生一门课程的成绩。有时,一个表可能有多个码,比如表1.1中,姓名不允许重名,
6、则“学号”、“姓名”均是学生信息表码。对于每一个关系表,通常可指定一个码为“主码”,在关系模式中,一般用下划线标出主码。设表1.1的名字为XSB,关系模式可分别表示为XSB(学号,姓名,性别,出生时间,专业,总学分,备注)。设表1.2的名字为KCB,关系模式可分别表示为KCB(课程号,课程名,开课学期,学时,学分)。设表1.3的名字为CJB,关系模式可分别表示为CJB(学号,课程号,成绩,学分)。,1.1.3 关系型数据库语言,SQL语言的功能包括数据查询、数据操纵、数据定义和数据控制4部分。SQL语言简洁、方便、实用,为完成其核心功能只用了6个动词:SELECT、CREATE、INSERT、
7、UPDATE、DELETE、GRANT(REVOKE),目前已成为应用最广的关系数据库语言。SQL语言易学易用,作为关系数据库的标准语言,它已被众多商用数据库管理系统产品所采用。不过,因为不同的数据库管理系统在其实践过程中都对SQL规范做了某些编改和扩充,所以,实际上不同数据库管理系统之间的SQL语言不能完全通用。例如,微软公司的SQL Server数据库系统支持的是Transact-SQL(简称T-SQL),而甲骨文公司的Oracle 数据库所使用的SQL语言则是PL-SQL。,1.2 数据库设计,1.2.1 概念结构设计实体集中的实体彼此是可区别的。如果实体集中的属性或最小属性组合的值能唯
8、一标识其对应实体,则将该属性或属性组合称为码。对于每一个实体集,可指定一个码为主码。如果用矩形框表示实体集,用带半圆的矩形框表示属性,用线段连接实体集与属性,当一个属性或属性组合指定为主码时,在实体集与属性的连接线上标记一斜线,则可以用图1.4描述学生成绩管理系统中的实体集及每个实体集涉及的属性。,图1.4 学生和课程实体集属性的描述,1.2.1 概念结构设计,1一对一的联系(1:1)A中的一个实体至多与B中的一个实体相联系,B中的一个实体也至多与A中的一个实体相联系。例如,“班级”与“正班长”这两个实体集之间的联系是一对一的联系,因为一个班级只有一个正班长,反过来,一个正班长只属于一个班级。
9、“班级”与“正班长”两个实体集的E-R模型如图1.5所示。,图1.5“班级”与“正班长”实体集E-R模型,1.2.1 概念结构设计,2一对多的联系(1:n)A中的一个实体可以与B中的多个实体相联系,而B中的一个实体至多与A中的一个实体相联系。例如,“班级”与“学生”这两个实体集之间的联系是一对多的联系,因为,一个班级可有若干学生,反过来,一个学生只能属于一个班级。“班级”与“学生”两个实体集的E-R模型如图1.6所示。,图1.6“学生”与“班级”两个实体集的E-R模型,1.2.1 概念结构设计,3多对多的联系(m:n)A中的一个实体可以与B中的多个实体相联系,而B中的一个实体也可与A中的多个实
10、体相联系。例如,“学生”与“课程”这两个实体集之间的联系是多对多的联系,因为,一个学生可选多门课程,反过来,一门课程可被多个学生选修。“学生”与“课程”两个实体集的E-R模型如图1.7所示。,图1.7“学生”与“课程”实体集间的E-R模型,1.2.2 逻辑结构设计,11:1联系的E-R图到关系模式的转换11的联系既可单独对应一个关系模式,也可以不单独对应一个关系模式。(1)联系单独对应一个关系模式,则由联系属性、参与联系的各实体集的主码属性构成关系模式,其主码可选参与联系的实体集的任一方的主码。例如,对于图1.5描述的“班级(BJB)”与“正班长(BZB)”实体集通过属于(SYB)联系E-R模
11、型,可设计如下关系模式(下横线表示该字段为主码):BJB(班级编号,院系,专业,人数)BZB(学号,姓名)SYB(学号,班级编号),1.2.2 逻辑结构设计,(2)联系不单独对应一个关系模式,联系的属性及一方的主码加入另一方实体集对应的关系模式中。例如,对于图1.5描述的“班级(BJB)”与“正班长(BZB)”实体集通过属于(SYB)联系E-R模型,可设计如下关系模式:BJB(班级编号,院系,专业,人数)BZB(学号,姓名,班级编号)或者BJB(班级编号,院系,专业,人数,学号)BZB(学号,姓名),1.2.2 逻辑结构设计,21:n联系的E-R图到关系模式的转换1n的联系既可单独对应一个关系
12、模式,也可以不单独对应一个关系模式。(1)若联系单独对应一个关系模式,则由联系的属性、参与联系的各实体集的主码属性构成关系模式,n端的主码作为该关系模式的主码。例如,对于图1.6描述的“班级(BJB)”与“学生(XSB)”实体集E-R模型,可设计如下关系模式:BJB(班级编号,院系,专业,人数)XSB(学号,姓名,性别,出生时间,专业,总学分,备注)SYB(学号,班级编号)(2)若联系不单独对应一个关系模式,则将联系的属性及1端的主码加入n端实体集对应的关系模式中,主码仍为n端的主码。例如,对于图1.6描述的“班级(BJB)”与“学生(XSB)”实体集E-R模型,可设计如下关系模式:BJB(班
13、级编号,院系,专业,人数)XSB(学号,姓名,性别,出生时间,专业,总学分,备注,班级编号),1.2.2 逻辑结构设计,3m:n联系的E-R图到关系模式的转换m:n的联系单独对应一个关系模式,该关系模式包括联系的属性、参与联系的各实体集的主码属性,该关系模式的主码由各实体集的主码属性共同组成。例如,对于图1.7描述的“学生(XSB)”与“课程(KCB)”实体集之间的联系可设计如下关系模式:XSB(学号,姓名,性别,出生时间,专业,总学分,备注)KCB(课程号,课程名称,开课学期,学时,学分)CJB(学号,课程号,成绩)关系模式CJB的主码是由“学号”和“课程号”两个属性组合起来构成的一个主码,
14、一个关系模式只能有一个主码。,1.2.3 数据库物理设计,数据的物理模型指数据的存储结构,如对数据库物理文件、索引文件的组织方式、文件的存取路径,内存的管理等。物理模型对用户是不可见的,它不仅与数据库管理系统有关,还与操作系统甚至硬件有关。,1.3 数据库应用系统,1.3.1 数据库的连接方式1ODBC数据库接口ODBC即开放式数据库互连(Open DataBase Connectivity),是微软公司推出的一种实现应用程序和关系数据库之间通信的接口标准。符合标准的数据库就可以通过SQL语言编写的命令对数据库进行操作,但只针对关系数据库。目前所有的关系数据库都符合该标准(如SQL Serve
15、r,Oracle,Access,Excel等)。ODBC本质上是一组数据库访问API(应用程序编程接口),它由一组函数调用组成,核心是SQL语句,其结构如图1.8所示。,图1.8 ODBC数据库接口,1.3.1 数据库的连接方式,2OLE DB数据库接口OLE DB即数据库链接和嵌入对象(Object Linking and EMBedding DataBase)。OLE DB是微软提出的基于COM思想且面向对象的一种技术标准,其目的是提供一种统一的数据访问接口来访问各种数据源。这里所说的“数据”除了标准的关系型数据库中的数据之外,还包括邮件数据、Web上的文本或图形、目录服务(Directo
16、ry Services)、主机系统中的文件和地理数据以及自定义业务对象等。OLE DB标准的核心内容就是,提供一种相同的访问接口,使得数据的使用者(应用程序)可以使用同样的方法访问各种数据,而不用考虑数据的具体存储地点、格式或类型,其结构如图1.9所示。,图1.9 OLE DB数据库接口,1.3.1 数据库的连接方式,3ADO数据库接口ADO(ActiveX Data Objects)是微软公司开发的基于COM的数据库应用程序接口,通过ADO连接数据库,可以灵活地操作数据库中的数据。图1.10所示为应用程序通过ADO访问SQL Server数据库接口。从图中可看出,使用ADO访问SQL Ser
17、ver数据库有两种途径:一种是通过ODBC驱动程序,另一种是通过SQL Server专用的OLE DB Provider,后者有更高的访问效率。,图1.10 ADO访问SQL Server的接口,1.3.1 数据库的连接方式,4ADO.NET数据库接口ASP.NET使用ADO.NET数据模型。该模型从ADO发展而来,但它不只是对ADO的改进,而是采用了一种全新的技术。主要表现在以下几个方面。(1)ADO.NET 不是采用 ActiveX 技术,而是与.NET框架紧密结合的产物。(2)ADO.NET 包含对 XML标准的完全支持,这对于跨平台交换数据具有重要的意义。(3)ADO.NET 既能在与
18、数据源连接的环境下工作,又能在断开与数据源连接的条件下工作。特别是后者,非常适合于网络应用的需要。因为在网络环境下,保持与数据源连接,不符合网站的要求,不仅效率低,付出的代价高,而且常常会引发多个用户同时访问带来的冲突。因此ADO.NET系统集中主要精力来解决在断开与数据源连接的条件下的数据处理问题。,1.3.1 数据库的连接方式,ADO.NET 提供了面向对象的数据库视图,并且在ADO.NET 对象中封装了许多数据库属性和关系。最重要的是,ADO.NET 通过多种方式封装和隐藏了很多数据库访问的细节。用户可以完全不知道对象在与 ADO.NET 对象交互,也不用担心数据移动到另外一个数据库或者
19、从另一个数据库获得数据的细节问题。图1.11所示为ADO.NET 架构总览。,图1.11 通过ADO.NET访问数据库的接口模型,1.3.1 数据库的连接方式,5JDBC数据库接口在JDBCAPI中有两层接口:应用程序层和驱动程序层,前者使开发人员可以通过SQL调用数据库和取得结果,后者处理与具体数据库驱动程序相关的所有通信。使用JDBC接口对数据库操作有如下优点:(1)JDBCAPI与ODBC十分相似,有利于用户理解。(2)使编程人员从复杂的驱动器调用命令和函数中解脱出来,而致力于应用程序功能的实现。(3)JDBC支持不同的关系数据库,增强了程序的可移植性。使用JDBC的主要缺点:访问数据记
20、录的速度会受到一定影响;此外,JDBC结构中包含了不同厂家的产品,这给数据源的更改带来了较大麻烦。6数据库连接池技术网络环境下的数据库应用,由于用户众多,使用传统的JDBC方式进行数据库连接,系统资源开销过大,这成为制约大型企业级应用效率的瓶颈,而采用数据库连接池技术对数据库连接进行管理,可以大大提高系统的效率和稳定性。,1.3.2 客户-服务器(C/S)模式应用系统,对于一般的数据库应用系统,除了数据库管理系统外,需要设计适合普通人员操作数据库的界面。目前,流行的开发数据库界面的工具主要包括Visual BASIC、Visual C+、Visual FoxPro、Delphi、PowerBu
21、ilder等。数据库应用程序与数据库、数据库管理系统之间的关系如图1.12所示。,图1.12 数据库应用程序与数据库、数据库管理系统之间的关系,1.3.2 客户-服务器(C/S)模式应用系统,应用程序和数据库管理系统可以运行在同一台计算机上(单机方式),也可以运行在网络方式下。在网络方式下,数据库管理系统在网络上的一台主机上运行,应用程序可以在网络上的多台主机上运行,即一对多的方式。例如,用Visual Basic开发的客户-服务器(C/S)模式的学生成绩管理系统的学生信息输入界面如图1.13所示。,图1.13 C/S模式的学生成绩管理系统界面,1.3.3 三层客户-服务器(B/S)模式应用系
22、统,基于Web的数据库应用采用三层客户-服务器模式,也称为B/S结构。第一层为浏览器,第二层为Web服务器,第三层为数据库服务器。浏览器是用户输入数据和显示结果的交互界面。用户在浏览器表单中输入数据,然后将表单中的数据提交并发送到Web服务器。Web服务器应用程序接收并处理用户的数据,通过数据库服务器,从数据库中查询需要的数据(或把数据录入数据库)并返回给Web服务器。Web服务器再把返回的结果插入HTML页面,传送到客户端,在浏览器中显示出来。三层客户-服务器结构如图1.14所示。,图1.14 三层客户-服务器结构,1.3.3 三层客户-服务器(B/S)模式应用系统,例如,用ASP.NET开
23、发的三层客户-服务器(B/S)模式的学生成绩管理系统的学生信息更新页面如图1.15所示。,图1.15 B/S模式的学生成绩管理系统页面,1.4 SQL Server 2008环境,1.4.1 SQL Server 2008概述SQL Server 2008是Microsoft公司在2008年正式发布的一个SQL Server版本,是目前最新的SQL Server版本。SQL Server 2008是一个重大的产品版本,它推出了许多新的特性和关键的改进,使其成为至今为止最强大、最全面的SQL Server版本。本书将从各个方面来讨论SQL Server 2008的应用。SQL Server 20
24、08在SQL Server 2005的基础之上进行开发,不仅对原有的功能进行了改进,而且还增加了许多新的特性,如新添了数据集成功能,改进了分析服务、报告服务以及Office集成,等等。SQL Server 2008将提供更安全、更具延展性、更高的管理能力,从而成为一个全方位企业资料、数据的管理平台。,1.4.2 SQL Server 2008的安装,1安装SQL Server 2008的硬件和软件要求为了正确安装和运行SQL Server 2008,计算机必须满足以下配置要求。(1)硬件处理器:需要 Pentium III 兼容处理器或更高速度的处理器,处理器速度不低于1 GHz,为了获得更好
25、的运行效果,建议为2 GHz或以上。内存:512 MB以上,建议为2 GB 或更大。硬盘:1.7 GB的安装空间以及必要的数据预留空间。,1.4.2 SQL Server 2008的安装,(2)软件 操作系统要求(32位)。SQL Server 2008只能运行在Windows操作系统之上。SQL Server 2008设计了不同的分支版本,每个版本对操作系统的要求不尽相同。在SQL Server 2008服务器软件的32位版本中,Enterprise版(除了Enterprise Evaluation版,即企业评估版之处)只能运行在Windows Server 2003和Windows Ser
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ch01 数据库 基本概念
链接地址:https://www.31ppt.com/p-5375500.html