VFP 程序设计 第一章数据库系统基础知识

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

计算机工程学院计算机科学与应用教研室刘尚勤二零一零年二十八VFP程序设计第一章数据库系统基础知识1.1数据处理与数据管理技术1.2数据库系统的组成1.3数据库系统的模式结构1.4数据模型1.5关系数据库标准语言SQL1.6数据库设计基础1.7主流的DBMS产品简介教学内容和要求掌握数据库基础的发展过程;数据库、数据库管理系统、数据库系统等概念;关系数据库的基础知识包括关系模型、关系运算及其性质;追加、修改、删除的SQL命令;了解信息的三个领域及数据模型;熟悉数据库系统的开发过程,了解目前主流的DBMS产品。一.数据处理信息是现实世界中事物的存在方式或运动状态的反映,是认识主体所感知或所表述的事物存在、运动及其变化的形式、内容和效用。数据是计算机中对事实、概念或指令进行描述的一种特殊格式,这种格式适合于计算机及其相关设备自动地进行传输、转换和加工处理。1.1数据处理与数据管理技术数据处理是对各种类型的数据进行收集、存储、分类、计算、加工、检索与传输的过程。包括:收集原始数据、数据规范化及其编码、数据输入、数据处理、数据输出。二.发展阶段人工管理阶段特点:数据管理尚无统一的数据管理软件数据是面向应用程序的应用程序依赖于数据,不具有数据独立性文件系统阶段特点数据以文件形式可以长期存放在存储介质上程序与数据之间具有相对对立性数据文件组织多样化数据库系统阶段特点:采用数据模型表示复杂的数据结构。有较高的数据独立性。提供了数据安全性、完整性等管理与控制功能,以及对数据操作的并发控制、数据的备份与恢复等功能。统一管理和控制数据,为用户提供了方便的用户接口。1.基本概念数据库(DB)定义:是指一组按照一定数据模型组织的、长期存放在辅助存储器上的、可共享的相关数据的集合。1.2数据库系统的组成特点①数据结构化②数据可共享③数据独立于程序④统一管理控制数据DBMS管理控制数据功能:安全性,完整性.并发控制,恢复.从全局分析和描述数据,适应多个用户、多种应用共享数据的需求。可减少数据冗佘,节省存储空间,保证数据的一致性.数据面向全局应用,用数据模型描述数据和数据之间的联系。逻辑独立性:应用程序与DB的逻辑结构相互独立.物理独立性:应用程序与DB的存储结构相互独立.数据库管理系统(DBMS)是用于建立使用和维护数据库的系统软件,是数据库系统的核心。VisualFoxPro属于一种关系型数据库管理系统。数据定义语言(DDL):用来建立所需的数据库数据操作语言(DML):用来对数据库进行查询和数据的组织和存取管理数据库的运行管理功能数据库的维护应用程序用户计算机支持系统上述各部分共同构成一个完整的数据库系统(DBS)1.2数据库系统的组成1.三级模式结构•外部层是面向单个用户的层次,是数据库的“外部视图”。•内部层是最接近物理存储的层次,是数据库的“内部视图”或“存储视图”,与实际存储密切相关。•概念层是数据库的“概念视图”,是数据库中所有信息的抽象表示。1.3数据库系统的模式结构外部层(数据库的外模式)概念层(数据库的模式)内部层(数据库的内模式)图1-2数据库系统三级结构图2.三级模式结构与数据库模式的对应关系一.数据模型•三个领域:现实世界→事物(对象、性质)观念世界→实体(对象、属性)数据世界→数据(记录、字段)•实体模型反映事物联系的实体。•数据模型描述实体模型的数据。包括实体及实体间联系的数据结构描述、对数据的操作,和数据的完整性约束条件。1.4数据模型二.概念模型是按用户的观点对数据建模,它是对现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具。E-R模型的基本概念•实体:客观存在的、可以相互区别的事物。•联系:实体集之间关系的抽象表示。•属性:实体或联系所具有的特征。E-R图:是E-R模型的图形表示。例如:在学校的教学管理系统中存在学生、成绩等实体集。该系统的概念模型表示如下图:学分…班级…姓名学号课程号课程名学生课程考试1mE-R实例成绩四.关系模型•关系与关系模式:1、关系:以二维表结构来表示实体集及其实体间的联系。一个关系就是一张二维表。三.数据模型的分类•层次模型(采用树型结构)•网络模型(采用无向图型结构)•关系模型(采用二维表结构)E.F.Codd---关系数据库之父国内目前超过90%以上的数据库系统采用关系模型关系模型的数据结构关系数据模型的基本结构是关系。在用户观点下,关系数据模型中数据的逻辑结构是一张二维表(Table),它由表名、行和列组成。表的每一行称为一个元组(Tuple),每一列称为一个属性(Attribute)。例如,例表1.学生登记表(S):学生登记表(S)SNOSNAMEDEPARTSEXBDATEHEIGHTC005张雷计算机男1987-06-301.75C008王宁计算机女1986-08-201.62A041周光明自动控制男1986-08-101.70M038李霞霞应用数学女1988-10-201.65R098钱欣管理工程男1986-05-161.80………………………………关系模型的数据结构例表2.课程开设表(C):课程开设表(C)CNOCNAMELHOURSEMESTERCC-112软件工程60春CS-202数据库45秋EE-103控制工程60春ME-234数学分析40秋MS-211人工智能60秋……………………关系模型的数据结构例表3.学生选课成绩表(SC):学生选课成绩表(SC)SNOCNOGRADEA041CC11292A041ME23492.5A041ME21190C005CC11284.5C005CS20282M038ME23485R098CS20275R098MS21170.5………关系数据模型(结构)学生登记表(S),课程开设表(C)与学生选课成绩表之间的联系:SNOCNOGRADEA041CC11292A041ME23492.5A041MS21190C005CC11284.5C005CS20282M038ME23485R098CS20275R098MS21170.5SNOSNAMEDEPARTSEXBDATEHEIGHTA041周光明自动控制男1986-8-101.7C005张雷计算机男1987-6-301.75C008王宁计算机女1986-8-201.62M038李霞霞应用数学女1988-10-201.65R098钱欣管理工程男1986-5-161.8CNOCNAMELHOURSEMESTERCC112软件工程60春CS202数据库45秋EE103控制工程60春ME234数学分析40秋MS211人工智能60秋学生登记表(S)学生选课成绩表(SC)课程开设表(C)2、关系模式:是对关系结构的描述,它包括模式名以及组成该关系的诸属性名。如表1-1是一个关系的实例:学号课程代号成绩备注99100100189考试99100200276考试99100300360补考表1-1关系“成绩”“成绩”关系的关系模式可表示为:成绩(学号,课程代号,成绩,备注)刚才看到的学生关系S的关系模式是什么呢?S(SNO,SNAME,DEPART,SEX,BDATE,HEIGHT)3、关键字•超关键字:能唯一确定记录的一列或几列的组合。•候选关键字:最简练的超关键字。即如果一个超关键字去掉其中任何一个字段后不再能唯一地确定记录。•主关键字:候选关键字中的一个。•外部关键字:当A表的主关键字被包含到B表中时,则称A表的主关键字为B表的外部关键字。1.4数据模型学生登记表(S)SNOSNAMEDEPARTSEXBDATEHEIGHTC005张雷计算机男1987-06-301.75C008王宁计算机女1986-08-201.62A041周光明自动控制男1986-08-101.70M038李霞霞应用数学女1988-10-201.65R098钱欣管理工程男1986-05-161.80………………………………超关键字:(学号,姓名,出生年月)候选关键字:(学号)(姓名,出生年月)主关键字:(学号)4、关系模型定义:用二维表表示实体集,通过外部关键字表示实体间联系的数据模型。关系模型通过一系列的关系模式来表述数据的结构和属性,一般有三个组成部分:数据结构数据操作完整性规则关系模型的性质属性是原子的,不可分解的。二维表的记录数随数据的增加而改变,但其字段数是相对固定的。二维表中的每一列均有唯一的字段名二维表中不允许出现完全相同的两行二维表中行的顺序、列的顺序均可以任意交换。5、关系运算关系的基本运算有两类:传统的集合运算(并、差、交等)专门的关系运算(选择、投影、联接)关系数据模型(传统集合的关系操作)并并操作是一个二元操作。它要求参与操作的两个关系有相同的关系模式。其作用是将两个关系组合成一个新的关系。根据集合论的定义,并操作创建的新关系中的每一个元组或者属于第一个关系、或者属于第二个关系,或者在两个关系中皆有。SNAMEGRADE钱欣75张进元62张华68胡平平79周亮80王宁100顾永华90黄进82并并SNAMEGRADE钱欣75张进元62张华68胡平平79周亮80SNAMEGRADE王宁100钱欣75顾永华90黄进82胡平平79周亮80SC1SC2结果关系表示选课程学生的“60~100分成绩表”交交操作也是一个二元操作。它对两个具有相同关系模式的关系进行操作,创建一个新关系。根据集合论的定义,交操作所创建新关系中的每一个元组必须是两个原关系中共有的成员。SNAMEGRADE钱欣75胡平平79周亮80交交SNAMEGRADE钱欣75张进元62张华68胡平平79周亮80SNAMEGRADE王宁100钱欣75顾永华90黄进82胡平平79周亮80SC1SC2结果表示选课学生“70分~80分成绩表”。.差差操作也是一个二元操作。它应用于具有相同关系模式的两个关系。生成新关系中的元组是存在于第一个关系而不存在于第二个关系中的元组。例如,关系SC1与关系SC2进行差操作:差差SNAMEGRADE钱欣75张进元62张华68胡平平79周亮80SNAMEGRADE王宁100钱欣75顾永华90黄进82胡平平79周亮80SNAMEGRADE张进元62张华68SC1SC2结果关系包括那些在SC1表中而不在SC2表中的成绩信息,即“60~69分成绩表”关系数据模型(专门的关系操作)插入插入操作是一种一元操作。它应用于一个关系,其操作是在关系中插入新的元组(或另一个具有相同模式的关系).例如:在课程开设表(C)中插入一个新的课程信息(CW101,’论文写作’,30,’春’)。插入插入(CW101,论文写作,30,春)CNOCNAMELHOURSEMESTERCC112软件工程60春CS202数据库45秋EE103控制工程60春ME234数学分析40秋MS211人工智能60秋CW101论文写作30春CNOCNAMELHOURSEMESTERCC112软件工程60春CS202数据库45秋EE103控制工程60春ME234数学分析40秋MS211人工智能60秋C删除删除操作为一元操作。它根据要求删去表中相应的元组。例如:从课程表(C)中删除课程CC112。删除删除CNOCNAMELHOURSEMESTERCS202数据库45秋EE103控制工程60春ME234数学分析40秋MS211人工智能60秋CNOCNAMELHOURSEMESTERCC112软件工程60春CS202数据库45秋EE103控制工程60春ME234数学分析40秋MS211人工智能60秋C关系数据模型(专门的关系操作)选择选择操作是一元操作。它应用于一个关系并产生另一个新关系。新关系中的元组(行)是原关系中元组的子集。选择操作根据要求从原先关系中选择部分元组。结果关系中的属性(列)与原关系相同(保持不变)。例如:从学生登记表(S)中,选出性别为“男”的学生元组,组成一个新关系“男学生登记表”。SNOSNAMEDEPARTSEXBDATEHEIGHTA

1 / 45
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功