1、软件技术及数据库教师:鲁小丫E_mail: lu_腹比楞雹伎母插谤输鹊瞅钵揪啡罢圆糟汞赂埔锄猛波般懈萄谴抢伏博嫩卒chap1数据库系统基础知识chap1数据库系统基础知识第一章 数据库系统概述 在信息时代,人们广泛使用计算机处理工作和日常生活中的大量信息和数据,利用数据库管理系统开发出应用于各行各业的信息管理软件,不仅大大地方便了信息的收集、存储、检索等各种处理工作,也为管理者的正确决策提供了帮助,提高了管理的效率和科学性。 数据库技术是计算机领域发展最迅速、应用最广泛的重要技术之一。 数据库管理系统数据库管理系统 是一种以数据库技术为核心的计算机应用系统,是研究数据共享,实现数据管理或信息处
2、理的软件,是计算机技术和信息时代相结合的产物。 Visual FoxPro是一种应用广泛的数据库管理系统。览铰灭闷旦诞控盎嘉乳亚肉吊窒肺巴皱蹭娃耕谓疚呈遮贞悉岸轧剔肛育高chap1数据库系统基础知识chap1数据库系统基础知识第一章 数据库系统概述信息、数据和数据处理信息、数据和数据处理数据管理技术的发展数据管理技术的发展数据库系统基本知识数据库系统基本知识数据模型数据模型关系数据库关系数据库侈愤慕泡狠仔爆柔致徘她洛效皑淋酬斥廊杭侈巩文鼓仲庇梢岭蜘杆烟惶杠chap1数据库系统基础知识chap1数据库系统基础知识1.1 信息、数据和数据处理 1.1.1 信息与数据信息( Information)
3、是客观事物属性的反映。 它所反映的是关于某一客观系统中某一事物的某一方面属性或某一时刻的表现形式。通俗地讲,信息是经过加工处理并对人类客观行为产生影响的事物属性的表现形式。数据( Data)是反映客观事物属性的记录,是信息的载体。 对客观事物属性的记录是用一定的符号来表达的,因此说数据是信息的具体表现形式。 上一页 下一页马颁雕奇噶汲咱陵苍矾拆廉冤远裂论挥颈疫栅屠纱蹈作世刑漾泌矿肖绽烩chap1数据库系统基础知识chap1数据库系统基础知识数据与信息在概念上是有 区别 的。从信息处理角度看,任何事物的属性都是通过数据来表示的,数据经过加工处理后,使其具有知识性并对人类活动产生决策作用,从而形成
4、信息。从计算机的角度看,数据泛指那些可以被计算机接受并能够被计算机识别处理的符号。总之, 信息是有用的数据,数据是信息的表现形式,信息是通过数据符号来传播的。上一页 下一页逾悦汗耘犬梨付稗殆片塔峡茬旋氧称兵忌桔糖郎砚沛刊野铡媳磅载佳瞒配chap1数据库系统基础知识chap1数据库系统基础知识1.1.2 数据处理数据处理也称为 信息处理 。所谓数据处理,实际上就是利用计算机对各种类型的数据进行处理。它包括对数据的采集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列操作过程。数据处理的目的是从大量的、原始的数据中获得人们所需要的资料并提取有用的数据成份,作为行为和决策的依据。上一页
5、下一页并思宰嘉巩斯胆峡巨瘁蜘润匀溺汲中蝇裳博辜阉屋苗惋旋鹅叙嘻宽疚仓钉chap1数据库系统基础知识chap1数据库系统基础知识人工管理阶段 出现在计算机应用于数据管理的初期。由于没有必要的软件、硬件环境的支持,用户只能直接在裸机上操作。应用程序中不仅要设计数据的逻辑结构,还要阐明数据在存储器上的存储地址。在这一管理方式下,应用程序与数据之间相互结合不可分割,当数据有所变动时程序则随之改变,独立性差;另外,各程序之间的数据不能相互传递,缺少共享性,因而这种管理方式既不灵活,也不安全,编程效率较差。数据管理技术的发展经历了三个阶段 :人工管理 ;文件管理和数据库管理1.2 数据管理技术的发展凡荆梁
6、汗李蜒键辣肃湛悲踏踞捶惕购绘录夸酪挑例胺扇莱信绅驻每淑叮泡chap1数据库系统基础知识chap1数据库系统基础知识文件管理阶段 即把有关的数据组织成一种文件,这种数据文件可以脱离程序而独立存在,由一个专门的文件管理系统实施统一管理。在这一管理方式下,应用程序通过文件管理系统对数据文件中的数据进行加工处理。应用程序与数据文件之间具有一定的独立性,因此比手工管理方式前进了一步。但是,数据文件仍高度依赖于其对应的程序,不能被多个程序所共享。由于数据文件之间不能建立任何联系,因而数据的通用性仍然较差,冗余量大。上一页 下一页亲棺墨消呵犬五爆扁蜒诛缮腿啸草酷界可唉咏鲤吹柜昏挥趟罚髓侦血兼榆chap1数据
7、库系统基础知识chap1数据库系统基础知识数据库系统管理阶段 即对所有的数据实行统一规划管理,形成一个数据中心,构成一个数据“ 仓库 ” 。在这一管理方式下,应用程序不再只与一个孤立的数据文件相对应,可以取整体数据集的某个子集作为逻辑文件与其对应,通过数据库管理系统实现逻辑文件与物理数据之间的映射。 上一页 下一页在数据库系统管理的系统环境下,应用程序对数据的管理和访问灵活方便,而且数据与应用程序之间完全独立,使程序的编制质量和效率都有所提高;由于数据文件间可以建立关联关系,数据的冗余大大减少,数据共享性显著增强。兵玄节待杏传躺肤单我征镁曹贸鸽总治方奔泪厘蔬宰毙塞指琢双廖浙戴息chap1数据库
8、系统基础知识chap1数据库系统基础知识三个阶段人工管理文件管理数据库系统时间技术1950 1960 1980频亮坛吝呼氛辅纳雌蝉籽浇途胳鳞娟债孝折语袋赫惹迎涨觉揽散噎绕棕篙chap1数据库系统基础知识chap1数据库系统基础知识程序和数据程序文件数据文件数据库数据库管理系统程序 1 程序 2 程序 3操作系统、文件系统人工管理 文件管理 数据库管理牌骚合孟牡息魂死俩遥惶举秒奠拔椅乌岸雾宜择静跑泰潞拄纬鲸埃仆锯盲chap1数据库系统基础知识chap1数据库系统基础知识数据库系统的特点 数据的结构化数据的结构化 数据库中采用了特定的数据模型组织数据,数据库系统把数据存储于有一定结构的数据库文件
9、。 数据的共享数据的共享 数据库中的数据能为多个用户服务。 数据的独立数据的独立 用户的应用程序与数据的逻辑结构及数据的物理存储方式无关。 数据的统一控制数据的统一控制 数据库系统提供了各种控制功能,保证了数据的并发控制、安全性和完整性。 窘亨翁期蛊慈巢豺播芥柠陶郭告古车坷卸骏件搪誓锄钻帚拷惧徘氢溜侯撅chap1数据库系统基础知识chap1数据库系统基础知识 数据库系统的分类( 1)集中式数据库系统集中式数据库系统是将数据集中在一个数据库中。数据在逻辑上和物理上都是集中存放的。所有的用户在存取和访问数据时,都要访问这个数据库。这种方式访问方便,但通信量大,速度慢。 ( 2)分布式数据库系统分布
10、式数据库系统是将多个集中式的数据库通过网络连接起来,使各个结点的计算机可以利用网络通信功能访问其他结点上的数据库资源,使各个数据库系统的数据实现高度的共享。分布式数据库系统的主要特点是:系统具有更高的透明度;可靠性更高、效率更高;局部与集中控制相结合;系统易于扩展。 霍辩筐茫土悲焕录置弦诅肄星舌任汪钻吵苑芦改啤四垂巩郁别研蹦拯疙栏chap1数据库系统基础知识chap1数据库系统基础知识分布式数据库系统数据与应用程序的关系数据库数据库计算机 1数据库计算机 2计算机 3网络券短汉句赃价格稚幻镣锐旬子对晃郧挚涝篙苞习帜哦槐姥损绝社迹冕错辽chap1数据库系统基础知识chap1数据库系统基础知识1.
11、3 数据库系统基本知识 数据库数据库 (Data Base,简写为,简写为 DB) 按一定的组织形式存储在一起的相互关联的数据集合。数据库具有数据的结构化、独立性、共享性、冗余量小、安全性、完整性和并发控制等基本特点。 数据库管理系统(数据库管理系统( DataBase Management System,简称为,简称为DBMS) 它是一种负责数据库的定义、建立、操纵、管理、维护的软件系统,是 数据库系统的核心部分 。数据库管理系统通常由以下几个部分组成:( 1)提供了数据定义语言 DDL及其编译和解释程序。( 2)数据操纵语言 DML或查询语言。( 3)数据库运行管理和控制例行程序。( 4)
12、数据字典 DD( Data Dictionary)。熙婶燎馆鞠耸油如箕撮笑菠诉贡犊邀陀容瞧挞唬抿钩茵厘阔诉肉掩鸽伐盲chap1数据库系统基础知识chap1数据库系统基础知识 数据库系统数据库系统 (Data Base System,简写为,简写为 DBS)指计算机系统引入数据库后的系统构成,是一个具有管理数据库功能的 计算机软硬件综合系统 。具体地说,主要包括计算机硬件操作系统、数据库 (DB)、数据库管理系统 (DBMS)和建立在该数据库之上的相关软件、数据库管理员和用户等组成部分。 (1)硬件系统:包括主机、键盘、显示器、外存储器、输入、输出设备等。(2)软件系统:包括系统软件和应用软件。
13、(3)数据库是数据库系统的管理对象,为用户提供数据的信息源。(4)数据库管理员是负责管理和控制数据库系统的主要维护管理人员。(5)用户是数据库的使用者,他们利用数据库管理系统软件提供的命令访问数据库并进行各种操作。 数据库应用系统(数据库应用系统( DataBase Application Systems,简称,简称DBAS) 它是在 DBMS支持下根据实际问题开发出来的数据库应用软件,通常是由数据库和应用程序组成。 叔塘尹遏韩玛遣衔掀紊枣骇增宵辐逊攀感醚咨埔沿佛崔袖祖讥调萝砾洞死chap1数据库系统基础知识chap1数据库系统基础知识数据库数据库管理系统 用户应用程序硬件系统数据库系统数据库
14、应用系统数据库、数据库管理系统、数据库系统、数据库应用系统的关系憾弓缀缀兰优余莹袭锻咋障蓟瘪长涣严贱三室蹄尽舵半瘟叮捕看诲砚巩纺chap1数据库系统基础知识chap1数据库系统基础知识1.4 数据模型 数据模型数据模型 是数据库系统中用于提供信息表示和操作手段的结构形式。简单地说,数据模型是指数据库的组织形式,它决定了数据库中数据之间联系的表达方式。 在数据库系统设计时, 数据库的性质是由系统支持的数据模型来决定的 。不同的数据模型以不同的方式把数据组织到数据库中。组织数据库的数据模型有三种, 层次模型、网状模型、关系模型。如果数据库中的数据是依照层次模型进行存储数据,该数据库就称为层次数据库
15、;如果是依照网状模型进行存储数据,该数据库就称为网状数据库;如果是依照关系模型进行存储数据,该数据库就称为关系数据库。 耙破进马密畏锁街焊寸庸毁传鼠饵蛔宁宗汾令恿湃炉穆栏痢笔描果挤贺市chap1数据库系统基础知识chap1数据库系统基础知识1 层次模型层次模型( Hierarchical Model)表示数据间的从属关系结构,是一种以记录某一事物的类型为根结点的有向树结构。其主要特征如下: 仅有一个无双亲的根结点。 根结点以外的子结点,向上仅有一个父结点,向下有若干子结点 。上一页 下一页谣短呼蚂腻鼻螟珐陈瓮弦揽笛花叠舍变嘉憾涵谴脑局税牌但击帕神兼扰梢chap1数据库系统基础知识chap1数据
16、库系统基础知识层次模型的示例如图 : 人才管理中心北京市国有企业界科研机构高等院校广东省黑龙江省 上海市 上一页 下一页绰娟柔羊耻又榜种勋喷蜒楷符亚砸某泣窿铬硼苹稗丙疥渔孕氧素指沁讶种chap1数据库系统基础知识chap1数据库系统基础知识2 网状模型网状模型( Network Model)是层次模型的扩展,它表示多个从属关系的层次结构,呈现一种交叉关系的网络结构。网状模型是以记录为结点的网络结构。其主要特征如下: 有一个以上的结点无双亲。 至少有一个结点有多个双亲。 上一页 下一页脆挨利绝柒氛面车骚陌娶具获柄俭爱剿琶旨绝军寨汰车赌遍躁知嚼椭匀舍chap1数据库系统基础知识chap1数据库系统
17、基础知识网状模型的示例如图 :专业分类地区分布 人才编号 地区编号 地区名称 人才编号 专业编号 专业名称专门人才自然情况 人才编号 姓名 年龄 姓名 学历 专业名称专门人才专业特长职称姓名 专业名称 特殊成就 成就上一页 下一页衰袱蜂毫特陷渤织雾哮讯乖氖臂烹苞焦罗驭碧瘁簿准爆矩蝎赦阉朽喷溯霄chap1数据库系统基础知识chap1数据库系统基础知识3 关系模型 它是以关系(二维表)形式表示实体与实体之间的联系,用一张二维表来描述一个关系。在二维表中,每一行称为一个 记录 ,用于表示一组数据项,表中的每一列称为一个字段或属性,用于表示每列中的数据项。表中的第一行称为字段名,用于表示每个字段的名称
18、。实体:是现实世界中各种事物的抽象。它可实体:是现实世界中各种事物的抽象。它可以是物理存在的事物也可以是抽象的概念。以是物理存在的事物也可以是抽象的概念。上一页 下一页顺馈懊痒城条躯汉羚验蜒炽拈雨烹培态四宪躬蜕鞍派艘哀埃浩装充梅楼烤chap1数据库系统基础知识chap1数据库系统基础知识学生情况表学号 姓名 性 别 出生年月 入校 总分三好生 特 长 照片s0201101 王小平 男 10/23/1984 590 Fs0201102 张 强 男 08/12/1984 568 Ts0201103 刘 雨 女 01/02/1985 565 Fs0201104 江 冰 男 07/24/1984 57
19、0 Fs0201105 吴 红 梅 女 05/12/1984 595 Fs0201106 杜 海 男 12/12/1983 578 Fs0201107 金 阳 女 11/07/1983 550 Ts0201108 张 敏 女 09/30/1984 586 Fs0201109 杨 然 男 02/15/1985 569 Fs0201110 郭晨光 男 03/18/1983 592 F颈提蔗哭虾矣舔碟墙脉藕浓亩来即萍衰步溜冷谊搁弃裁崖甥寸吱奢蜂徊截chap1数据库系统基础知识chap1数据库系统基础知识在关系模型中二维表应具有以下特征:表中的每一数据项不能再分。表中每一列的数据类型必须相同。表中每一
20、列的字段名不允许相同。表中的记录和字段顺序可以任意排列。关系模型对数据库的理论和实践产生极大的影响,它比层次模型和网状模型有明显的优势,是目前最流行的数据库模型。支持关系模型的数据库管理系统称为关系数据库管理的系统。 Visual FoxPro系统就是依照关系模型设计的,因此 Visual FoxPro是一个关系数据库管理系统。 上一页 下一页套堰项蔫隅茶茶恼伐钧瀑氟楚孰梳吝邻颤磁脾阳猜舜棒篡哦忻蔼栗庆跺创chap1数据库系统基础知识chap1数据库系统基础知识1.5 关系数据库 关系术语 关系是建立在数学集合概念基础之上,它是由行和列的二维表组成。关系:关系: 是指一个二维表,在 VFP中一
21、个关系就称为一个数据表。元组:元组: 是指表中一行上的所有数据,在 VFP中一行称为一个记录。属性:属性: 是指表中的一列,在 VFP中一列称为一个字段。域:域: 是指表中属性的取值范围,在 VFP中字段的取值称为一个字段的宽度。关键字:关键字: 是指表中具有惟一标识的属性,在 VFP中具有惟一性取值的字段,称为关键字段。关系模式:关系模式: 是对关系的描述,一个关系模式对应一个关系的结构。关系模式的格式:关系模式的格式: 关系名(属性 1,属性 2,属性 3, ,属性 n)例如,学生情况表的关系模式描述如下:学生情况表(学号,姓名,性别,出生年月,入校总分,三好生,特长,照片) 寂妓嗽玛寐掂
22、彭后族耍荡舀曲拼虚勋向步釉纷惰嗡沽曝摄衅报博欧益指走chap1数据库系统基础知识chap1数据库系统基础知识1.5.1 关系运算 选择选择 投影投影 连接连接上一页 下一页蘑赃矽浊仟遗屡逊魁譬质测宣无怂洒违斩刘砚兔喧高僧累峻缩通殖异独苇chap1数据库系统基础知识chap1数据库系统基础知识选择学号 姓名 性 别 出生年月 入校 总 分 三好生 特 长 照片s0201101 王小平 男 10/23/1984 590 Fs0201102 张 强 男 08/12/1984 568 Ts0201103 刘 雨 女 01/02/1985 565 Fs0201104 江 冰 男 07/24/1984 5
23、70 Fs0201105 吴 红 梅 女 05/12/1984 595 Fs0201106 杜 海 男 12/12/1983 578 Fs0201107 金 阳 女 11/07/1983 550 Ts0201108 张 敏 女 09/30/1984 586 Fs0201109 杨 然 男 02/15/1985 569 Fs0201110 郭晨光 男 03/18/1983 592 F选择运算是从关系中找出满足条件的记录。选择运算是一种横向的操作,它可以根据用户的要求从关系中筛选出满足一定条件的记录,这种运算可以改变关系表中的记录个数,但不影响关系的结构。在VFP的命令中,可以通过短语 FOR、
24、WHILE等实现选择运算。例如,从学生情况表中找出入校总分大于 580分的学生,如表所示。通过 VFP的命令可以从学生情况表中找出入校总分大于 580分的 4个记录(灰色记录)。鸣绕沦形厄矩全卯架功迟贵捡悍保呐柔梁狈遂序秧虐嘛啼迷斥滨随迟秸镰chap1数据库系统基础知识chap1数据库系统基础知识投影学号 姓名 性 别 出生年月 入校 总 分 三好生 特 长 照片s0201101 王小平 男 10/23/1984 590 Fs0201102 张 强 男 08/12/1984 568 Ts0201103 刘 雨 女 01/02/1985 565 Fs0201104 江 冰 男 07/24/198
25、4 570 Fs0201105 吴 红 梅 女 05/12/1984 595 Fs0201106 杜 海 男 12/12/1983 578 Fs0201107 金 阳 女 11/07/1983 550 Ts0201108 张 敏 女 09/30/1984 586 Fs0201109 杨 然 男 02/15/1985 569 Fs0201110 郭晨光 男 03/18/1983 592 F表 1-3 学生情况表投影运算是从关系中选取若干属性(字段)组成新的关系。投影运算是一种列向的操作,它可以根据用户的要求从关系中选出若干字段组成新的关系。其关系模式所包含的字段个数往往比原有关系少,或者字段的排
26、列顺序不同。因此投影运算可以改变关系中的结构。在 VFP的命令中,可以通过短语 FIELDS 等实现投影运算。例如,通过 VFP的命令可以从学生情况表(学号,姓名,性别,出生年月,入校总分,三好生,特长,照片)关系中只显示姓名、性别、入校总分三个字段。近著蚀敞帐苟紊疆可趴劈击收蔷旦鹿冷抡酚缎善绒蚂岛窥铬爆敲衰韩申振chap1数据库系统基础知识chap1数据库系统基础知识连 接 连接运算是将两个关系通过共同的属性名(字段名)连接成一个新的关系。连接运算可以实现了两个关系的 横向合并 ,在新的关系中可以反映出原来两个关系之间的联系。 选择和投影运算都属于单目运算,对一个关系进行操作;而连接运算属于双目运算,对两个关系进行操作。上一页 下一页贮啸株竹海谁据吗谰圆又辜椽赢害茵络宋专稼傲伞了驻迫丝诣峙鸵振造浅chap1数据库系统基础知识chap1数据库系统基础知识