您好,欢迎访问三七文档
数据库的基本概念数据库的基本概念学习目标本章重点本章内容2020年1月28日第2页•要掌握数据库和数据库系统的含义、•数据库系统的组成;•掌握数据模式的含义及各级模式的关系;•掌握当前三类数据模型的含义及特征;•理解数据库管理系统的功能。•数据库的基础理论SQLServer2008的使用学习目标本章重点•数据库的特点及相关概念;•数据库技术及发展;•数据库系统的的结构;•数据库系统三级模式结构;•概念模型及其表示;•常见的三种数据模型。2020年1月28日第4页本章内容1.1数据库基本概念1.2数据库设计1.3数据库应用系统1.4SQLServer2008环境1.1数据库基本概念1.1.1数据库与数据库管理系统1.数据库数据库(DB)是存放数据的仓库,只不过这些数据存在一定的关联,并按一定的格式存放在计算机内。广义上讲,数据不仅包含数字,还包括文本、图像、音频、视频等。例如,把一个学校的学生、课程、学生成绩等数据有序地组织并存放在计算机内,就可以构成一个数据库。因此,数据库由一些持久的相互关联的数据的集合组成,并以一定的组织形式存放在计算机的存储介质中。1.1数据库基本概念2.数据库管理系统数据库管理系统(DBMS)是管理数据库的系统,它按一定的数据模型组织数据。DBMS应提供如下功能:(1)数据定义功能:可定义(创建)数据库中的数据对象。(2)数据操纵功能:可对数据库表进行基本操作,如插入、删除、修改、查询等。(3)数据的完整性检查功能:保证用户输入的数据满足相应的约束条件。(4)数据库的安全保护功能:保证只有具有权限的用户才能访问数据库中的数据。(5)数据库的并发控制功能:使多个应用程序可在同一时刻并发地访问数据库的数据。(6)数据库系统的故障恢复功能:使数据库在运行出现故障时进行数据库恢复,以保证数据库可靠运行。(7)在网络环境下访问数据库的功能。(8)方便、有效地存取数据库信息的接口和工具。编程人员通过程序开发工具与数据库的接口编写数据库应用程序。数据库系统管理员(DBA,DataBaseAdminitrator)通过提供的工具对数据库进行管理。1.1数据库基本概念数据、数据库、数据库管理系统与操作数据库的应用程序,加上支撑它们的硬件平台、软件平台和与数据库有关的人员一起构成了一个完整的数据库系统。图1.1描述了数据库系统的构成。图1.1数据库系统的构成1.1.2数据模型(1)层次模型:以树状层次结构组织数据。图1.2所示为某学校按层次模型组织的数据示例。图1.2某学校按层次模型组织的数据示例1.1.2数据模型(2)网状模型:每一个数据用一个节点表示,每个节点与其他节点都有联系,这样,数据库中的所有数据节点就构成了一个复杂的网络。图1.3所示为按网状模型组织的数据示例。图1.3按网状模型组织的数据示例1.1.2数据模型(3)关系模型:以二维表格(关系表)的形式组织数据库中的数据。例如,在学生成绩管理系统所涉及的学生、课程和成绩三个表中。学生表涉及的主要信息有学号、姓名、性别、出生时间、专业、总学分、备注。课程表涉及的主要信息有课程号、课程名、开课学期、学时和学分。成绩表涉及的主要信息有学号、课程号和成绩。表1.1、表1.2和表1.3分别描述了学生成绩管理系统中学生、课程和成绩这三个表的部分数据。学号姓名性别出生时间专业总学分备注081101王林男1990-02-10计算机50081103王燕女1989-10-06计算机50081108林一帆男1989-08-05计算机52已提前修完一门课081202王林男1989-01-29通信工程40有一门课不及格,待补考081204马琳琳女1989-02-10通信工程42表1.1学生表1.1.2数据模型课程号课程名开课学期学时学分0101计算机基础18050102程序设计与语言26840206离散数学4684学号课程号成绩学号课程号成绩08110110180081108101850811011027808110810264081101206760811082068708110310162081202101650811031027008120410191表1.2课程表表1.3成绩表1.1.2数据模型例如,表1.1中的“学号”可唯一标识每一个学生,表1.2中的“课程号”可唯一标识每一门课。表1.3中的“学号”和“课程号”可唯一标识每一个学生一门课程的成绩。有时,一个表可能有多个码,比如表1.1中,姓名不允许重名,则“学号”、“姓名”均是学生信息表码。对于每一个关系表,通常可指定一个码为“主码”,在关系模式中,一般用下划线标出主码。设表1.1的名字为XSB,关系模式可分别表示为XSB(学号,姓名,性别,出生时间,专业,总学分,备注)。设表1.2的名字为KCB,关系模式可分别表示为KCB(课程号,课程名,开课学期,学时,学分)。设表1.3的名字为CJB,关系模式可分别表示为CJB(学号,课程号,成绩,学分)。1.1.3关系型数据库语言SQL语言的功能包括数据查询、数据操纵、数据定义和数据控制4部分。SQL语言简洁、方便、实用,为完成其核心功能只用了6个动词:SELECT、CREATE、INSERT、UPDATE、DELETE、GRANT(REVOKE),目前已成为应用最广的关系数据库语言。SQL语言易学易用,作为关系数据库的标准语言,它已被众多商用数据库管理系统产品所采用。不过,因为不同的数据库管理系统在其实践过程中都对SQL规范做了某些编改和扩充,所以,实际上不同数据库管理系统之间的SQL语言不能完全通用。例如,微软公司的SQLServer数据库系统支持的是Transact-SQL(简称T-SQL),而甲骨文公司的Oracle数据库所使用的SQL语言则是PL-SQL。1.2数据库设计1.2.1概念结构设计实体集中的实体彼此是可区别的。如果实体集中的属性或最小属性组合的值能唯一标识其对应实体,则将该属性或属性组合称为码。对于每一个实体集,可指定一个码为主码。如果用矩形框表示实体集,用带半圆的矩形框表示属性,用线段连接实体集与属性,当一个属性或属性组合指定为主码时,在实体集与属性的连接线上标记一斜线,则可以用图1.4描述学生成绩管理系统中的实体集及每个实体集涉及的属性。图1.4学生和课程实体集属性的描述1.2.1概念结构设计1.一对一的联系(1:1)A中的一个实体至多与B中的一个实体相联系,B中的一个实体也至多与A中的一个实体相联系。例如,“班级”与“正班长”这两个实体集之间的联系是一对一的联系,因为一个班级只有一个正班长,反过来,一个正班长只属于一个班级。“班级”与“正班长”两个实体集的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中的多个实体相联系。例如,“学生”与“课程”这两个实体集之间的联系是多对多的联系,因为,一个学生可选多门课程,反过来,一门课程可被多个学生选修。“学生”与“课程”两个实体集的E-R模型如图1.7所示。图1.7“学生”与“课程”实体集间的E-R模型1.2.2逻辑结构设计1.1:1联系的E-R图到关系模式的转换1∶1的联系既可单独对应一个关系模式,也可以不单独对应一个关系模式。(1)联系单独对应一个关系模式,则由联系属性、参与联系的各实体集的主码属性构成关系模式,其主码可选参与联系的实体集的任一方的主码。例如,对于图1.5描述的“班级(BJB)”与“正班长(BZB)”实体集通过属于(SYB)联系E-R模型,可设计如下关系模式(下横线表示该字段为主码):BJB(班级编号,院系,专业,人数)BZB(学号,姓名)SYB(学号,班级编号)1.2.2逻辑结构设计(2)联系不单独对应一个关系模式,联系的属性及一方的主码加入另一方实体集对应的关系模式中。例如,对于图1.5描述的“班级(BJB)”与“正班长(BZB)”实体集通过属于(SYB)联系E-R模型,可设计如下关系模式:BJB(班级编号,院系,专业,人数)BZB(学号,姓名,班级编号)或者BJB(班级编号,院系,专业,人数,学号)BZB(学号,姓名)1.2.2逻辑结构设计2.1:n联系的E-R图到关系模式的转换1∶n的联系既可单独对应一个关系模式,也可以不单独对应一个关系模式。(1)若联系单独对应一个关系模式,则由联系的属性、参与联系的各实体集的主码属性构成关系模式,n端的主码作为该关系模式的主码。例如,对于图1.6描述的“班级(BJB)”与“学生(XSB)”实体集E-R模型,可设计如下关系模式:BJB(班级编号,院系,专业,人数)XSB(学号,姓名,性别,出生时间,专业,总学分,备注)SYB(学号,班级编号)(2)若联系不单独对应一个关系模式,则将联系的属性及1端的主码加入n端实体集对应的关系模式中,主码仍为n端的主码。例如,对于图1.6描述的“班级(BJB)”与“学生(XSB)”实体集E-R模型,可设计如下关系模式:BJB(班级编号,院系,专业,人数)XSB(学号,姓名,性别,出生时间,专业,总学分,备注,班级编号)1.2.2逻辑结构设计3.m:n联系的E-R图到关系模式的转换m:n的联系单独对应一个关系模式,该关系模式包括联系的属性、参与联系的各实体集的主码属性,该关系模式的主码由各实体集的主码属性共同组成。例如,对于图1.7描述的“学生(XSB)”与“课程(KCB)”实体集之间的联系可设计如下关系模式:XSB(学号,姓名,性别,出生时间,专业,总学分,备注)KCB(课程号,课程名称,开课学期,学时,学分)CJB(学号,课程号,成绩)关系模式CJB的主码是由“学号”和“课程号”两个属性组合起来构成的一个主码,一个关系模式只能有一个主码。1.2.3数据库物理设计数据的物理模型指数据的存储结构,如对数据库物理文件、索引文件的组织方式、文件的存取路径,内存的管理等。物理模型对用户是不可见的,它不仅与数据库管理系统有关,还与操作系统甚至硬件有关。1.3数据库应用系统数据库应用系统是在数据库管理系统(DBMS)支持下建立的计算机应用系统,简写为DBAS。数据库应用系统是由数据库系统、应用程序系统、用户组成的,具体包括:数据库、数据库管理系统、数据库管理员、硬件平台、软件平台、应用软件、应用界面。数据库应用系统的7个部分以一定的逻辑层次结构方式组成一个有机的整体,它们的结构关系是:应用系统、应用开发工具软件、数据库管理系统、操作系统、硬件。例如,以数据库为基础的财务管理系统、人事管理系统、图书管理系统等等。无论是面向内部业务和管理的管理信息系统,还是面向外部,提供信息服务的开放式信息系统,从实现技术角度而言,都是以数据库为基础和核心的计算机应用系统。1.3.2客户-服务器(C/S)模式应用系统对于一般的数据库应用系统,除了数据库管理系统外,需要设计适合普通人员操作数据库的界面。目前,流行的开发数据库界面的工具主要包括VisualBASIC、VisualC++、VisualFoxPro、Delphi、PowerBuilder等。数据库应用程序与数据库、数据库管理系统之间的关系如图1.12所示。图1.12数据库应用程序与数据库、数据库管理系统之间的关系1.3.2客户-服务器(C/S)模式应用系统应用程序和数据库管理系统可以运行在同一台计算机上(单机方式),也可以运行在网络方式下。在网络方式下,数据库管理系统在网络上的一台主机上运行,应用程序可以在网络上的多台主机上运行,即一对多的方式。例如,用Vis
本文标题:数据库的基本概念
链接地址:https://www.777doc.com/doc-3360633 .html