菜鸟要学的数据库基础知识_第1页
菜鸟要学的数据库基础知识_第2页
菜鸟要学的数据库基础知识_第3页
菜鸟要学的数据库基础知识_第4页
菜鸟要学的数据库基础知识_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章 数据库基础知识本章学习任务n1.1 数据库基础知识n1.2 关系数据模型n1.3 数据库设计基础1.1 数据库基本概念数据库基本概念n数据库:能将大量的数据按照一定的方式组织并存储起来,能够快速方便的管理与维护数据的方法与技术,大大地方便了数据共享。111 数据库概述1数据与数据处理n数据处理并不是计算机特有的概念,计算机没有引进我们的工作中时,财务部门所处理的单据、报表等属于数据处理。n计算机中的数据是存储在某一种媒介上能够识别的物理符号。n有两个含义:n描写事物的特性:例某人生日是“1980年12月21日”n数据在计算机中的表示形式:同一种意义的数据可能用多种不同形式表示例:n生

2、日 是 “ 1 9 8 0 年 1 2 月 2 1 日 ” , 也 可 以“1980.12.21”n明天天气是“阴有雨”,也可以用图形符号:n用数据符号表示信息通常有三种:n数值型:如年龄、体重、价格、温度n字符型:姓名、单位、地址n特殊型:照片(图像)、刮风、下雨(图形符号),还有声音、视频(多媒体数据)数据处理数据处理n也称信息处理,是利用计算机对各种类型的数据进行处理。包括数据的采集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列操作过程。n数据处理的目的是从大量数据中,通过分析、归纳、推理等科学方法,利用计算机技术、数据库技术等技术手段,提取有效的信息资源,为进一步分析、

3、管理、决策提供依据。 原始数据编码表示形式计算机表示形式信息(结果数据)搜集输出编码转换数据输入计算机处理用户2数据库(DataBase,DB)n孤立的数据不能代表确切的信息,为反映某一方面的信息往往需要若干数据。n例学生基本信息:姓名、性别、出生年月、籍贯、专业这些数据需组织起来。n最初的数据以文件形式组织,处理数据时,更多的是涉及对文件的操作(读、写),带来了数据处理不便、数据共享困难等一系列问题。数据库技术的产生有效地克服了这类问题。n数据库是存储在计算机系统中的存储介质上,按一定的方式组织起来的相关数据的集合。数据库是结构化的,不仅仅描述数据本身,而且数据之间的关系进行描述。n数据库中

4、的数据具有高度的共享性。数据不是面向某一种应用,而是面向多种应用,可以被多个应用程序共享。 3数据库管理系统(DataBase Management System,DBMS)nDBMS是数据管理软件,它需要操作系统的支持,向用户提供了一系列的数据管理功能。n组成:数据定义语言、数据操纵语言、数据库运行控制程序、实用程序n功能:数据定义、数据操纵、数据库运行管理、数据组织、存储与管理、数据库的建立与维护、数据通信接口。4数据库系统(DataBase System,DBS)n是运行数据库系统的计算机系统。包括:n计算机硬件环境和操作系统环境 nDBMS n数据库n数据库应用系统n用户数据库应用系统

5、数据库应用系统数据库管理系统数据库管理系统操作系统操作系统硬件硬件数据库系统层次图数据库系统层次图1.1.2 数据管理的发展历史 n数据管理: 是数据处理的中心问题,指如何对数据 分类、组织、编码、存储、检索和维护。n数据管理的发展历史可以分为四个阶段第一阶段:人工管理阶段n(50年代中期以前): 人工管理阶段n 特点:数据与程序不具有独立性,一组数据对应一组程序。程序与程序之间存在大量数据冗余。应用程序1应用程序1应用程序1数据组1数据组1数据组1第二阶段:文件系统阶段n(50年代后期至60年代中期):n特点:程序和数据分开存储,形成程序文件和数据文件,程序可以按名访问数据文件。但是, 同一

6、个数据项可能重复出现在多个文件中,导致数据冗余度较大,浪费空间,没有形成数据共享,又不易统一修改容易造成数据的不一致。第三阶段:数据库系统阶段n(60年代后期至今)n 特点:为了解决多用户、多应用共享数据的要求,由数据库管理系统DBMS管理数据,提高数据共享,减少数据冗余,提供数据与应用程序独立, 达到有效的管理和存取大量的数据资源。DBDBMS应用程序1应用程序2应用程序3第四阶段:分布式数据库系统与面向对象数据库系统n(70年代后期至今) n分布式数据库系统阶段分布式数据库系统阶段:与网络技术紧密结合n特点:合理分布数据在系统的相关节点上,实现节点共享,逻辑上属于同一系统,但在物理结构上是

7、分布式,因此用户不感觉到数据的分布。n由若干个节点集合而成,在通讯网络中联接在一起,每个节点都是一个独立的数据库系统,都拥有各自的数据库、中央处理机、终端以及各自的局部数据库管理系统。第四阶段:分布式数据库系统与面向对象数据库系统n面向对象数据库系统面向对象数据库系统:是数据库技术与面向对象程序设计技术结合 n 优点:它克服了传统数据库的局限性,能够自然地存储复杂的数据对象及它们之间的复杂关系,大幅提高了数据库管理效率、降低了用户使用的复杂性。n书中银行系统为对象关系数据库系统1.1.3数据模型1.三个世界n计算机信息管理的对象是现实生活中的客观事物,但这些事物是无法直接送入计算机的,必须进一

8、步整理和归类,进行信息的规范化,然后才能将规范信息数据化并送入计算机的数据库中保存起来。n这一过程经历了三个领域现实世界、信息世界和数据世界。(1)现实世界:存在于人脑之外的客观世界,包括事物及事物之间的联系。(2)信息世界:是现实世界在人们头脑中的反映。(3)数据世界:将信息世界中的实体进行数据化,事物及事物之间的联系用数据模型来描述。术语的对照现实世界现实世界信息世界信息世界数据世界数据世界(在关系模型理论中)(在关系模型理论中)在关系数据库在关系数据库中中事物类事物类实体集实体集关系关系表表事物事物实体实体元组元组记录记录性质性质属性属性属性属性字段字段例子:学生借阅图书n现实世界中:学

9、生借阅图书n在信息世界中将抽象为学生和书籍两个实体集,两个实体集间的联系为“借阅”。n用关系模型表示为学生、书籍和借阅三个关系。n用ACCESS中建立学生、书籍和借阅三个数据表,并为学生和借阅两个表建立联系,为书籍和借阅两个表建立联系。这样,就完成了从现实世界到数据世界的转换。2.数据模型n数据库的数据结构形式,叫数据模型,它是对数据库如何组织的一种模型化表示。n如果这个模型只能表示存储什么信息,那么它是简单的,是文件系统早已解决了的问题,更重要的是要以一定数据结构方式表示各种信息的联系。n数据模型表示的是数据库框架。打个比方,建设一幢楼房,首先要有建筑结构图,根据这个结构图先搭好架子,然后才

10、能堆砖砌瓦,使建筑物符合要求,数据模型就相当于这个建筑结构图,根据这个结构图组织装填数据。 数据模型的形式n概念模型(抽象的)n概念模型是数据库设计人员在认识现实世界中实体与实体间联系后进行的一种抽象。n实现模型(具体的)n有三种:层次型、网络型和关系型概念模型n最常用的描述概念模型的方法,称为实体联系方法(Entity-Relationship Approach),简称E-R方法。n实体:实体:指客观存在并可相互区别的物体。实体可以是实在的物体,如学生、图书等,也可以是抽象的事件,如订货、借书等。n属性属性:实体具有的某一种特性。如学生实体具有的姓名、性别等属性。n实体集实体集:性质相同的同

11、类实体的集合称为。如一个班的学生、图书馆的所有图书、皇马球队的所有场比赛等。n实体型:实体型:属性的集合,例学生实体型描述为:学生(学号、姓名、性别、出生年月)实体之间的联系n一对一:工厂厂长n一对多:系教师n多对多:商店顾客班长班长班级班级11班长班长学生学生1n教师教师学生学生mn(a)(b)(c)n例教师讲课ER图2概念模型(实现模型)概念模型(实现模型)n目前有三种常用的实现模型形式: 层次型-IMS 网状型-DBTG 关系关系型-Access、vfp、oracle、DB2、sybase等。(1)层次模型l有且仅有一个结点无双亲,称之为“根”。l除根结点外,其他子结点,有且仅有一个双亲

12、。l各实体型由上向下是一对多关系网络模型能够表示实体间的多种复杂联系和实体类型之间的对对多的联系。网络模型的特点:l可以有一个以上的结点无父结点;l至少有一个子结点有一个以上的父结点;在两个结点之间有两个或两个以上的联系。 学校学校课程教材课程教材教师教师学生学生教室教室(3)关系型数据模型 用二维表结构二维表结构来表示实体以及实体之间联系的模型称为关系数据模型。 无论实体本身还是实体间的联系均用称为“关系”的二维表来表示。能自然地反映实体间的联系。 与前两者区别:数据描述的一致性,模型概念单一。属性属性属性值属性值出生日期出生日期04/05/87学号学号姓名姓名性别性别专业专业0511011

13、401陈琳陈琳女女国际贸易国际贸易01/01/880511011402李兰兰李兰兰女女国际贸易国际贸易0511011403孙阳亮孙阳亮男男国际贸易国际贸易02/06/890511011501吴云芳吴云芳女女服装设计服装设计09/24/880511011502关温丹关温丹男男服装设计服装设计0511011601秦春霞秦春霞女女艺术设计艺术设计01/30/87元组元组关系模型举例 教师关系教师关系1.2关系数据库1.2.1、关系术语n关系关系:一个关系就是一张二维表,每个关系有一个关系名。如:纳税登记(税号,姓名,联系电话) 。n元组元组:一个二维表中,水平方向的一行成为一个元组元组对应表中的一个

14、具体记录。Access中表示为记录。n属性属性:二维表中垂直方向的列。Access中表示为字段名。n域域:属性的取值范围。n关键字关键字:其值能唯一地标识一个元组的属性或属性的组合。n如:教师关系中的“学号”属性、选课成绩关系中的“学号”与“课程号”属性组合。n外部关键字外部关键字:如果表中一个字段不是本表的主关键字,而是另外一个表的关键字和候选关键字,这个字段就称为外关键字。通过外部关键字使表与表建立联系。关系的特点关系的特点1.关系必须规范化关系必须规范化表中不能再包含表表中不能再包含表课程名学时数讲课 上机计算机基础6515C语言7020课程名讲课时数上机讲课计算机基础6515C语言70

15、202.在同一个关系中不能出现相同的属性名。3.关系中不允许有完全相同的元组。4.在一个关系中元组的次序无关紧要。5.在一个关系中列的次序无关紧要。实际关系模型 关系数据库中,基本数据结构是二维表,表之间的联系通过不同表中的公共字段来体现。各个关系模式不是孤立的,他们不是随意堆砌在一起的一堆二维表,要正确反映事物及事物之间的联系,需要进行仔细的关系数据库设计。1.2.2关系运算一、传统的集合运算n并:两个相同结构关系的并是由属于这两个关系的元组组成的集合。n差:两个结构相同的关系R和S 的差是由属于R但不属于S的元组组成。n交:两个结构相同的关系R和S的交是由既属于R又属于S的元组组成的二、专

16、门的关系运算1.选择 从一个关系(表)中按照一定的条件选出若干记录(行)生成一个新的关系(表)。例如:从表中选出成绩在60分以下的人员得到不及格人员成绩表。学号姓名性别成绩001王男66003李女77004张女25学号姓名性别成绩004张女252.投影 从一个关系(表)中选出若干列生成一个新的关系(表)。例如:从表中抽出“学号”“姓名”.“成绩”三列得到成绩表。学号姓名性别成绩001王男66003李女77004张女25学号姓名成绩001王66003李77004张25 3. 联接 关系的横向结合,将两个关系模式拼接成一个更宽的关系模式,生成的新关系中包含满足联接条件的元组。 班级班级学生学生一班

17、一班张三张三一班一班李四李四二班二班王五王五二班二班刘六刘六 班级班级 班主班主任任一班一班李老李老师师二班二班王老王老师师学生学生班级班级 班主任班主任张三张三一班一班 李老师李老师李四李四一班一班 李老师李老师王五王五二班二班 王老师王老师刘六刘六二班二班 王老师王老师表1表2表3合并条件:合并条件:表表1.班级班级=表表2.班级班级4.自然联接自然联接在联接运算中,按照字段值对应相等为条件进行的联接操作称为等值联接。是去掉重复属性的等值联接。自然联接是最常用的联接运算。1.3数据库设计基础1.3.1 数据库设计步骤一、设计原则1.概念单一化“一事一地”的原则2.避免在表之间出现重复字段3

18、.表中的字段必须是原始数据和基本数据元素4.用外部关键字保证有关联的表之间的联系二、设计步骤1.需求分析2.确定需要的表3.确定所需字段4.确定主键5.确定联系6.设计求精与优化1.3.2数据库设计过程一、需求分析1.信息需求2.处理需求3.安全性和完整性需求二、确定需要的表 仔细研究需要从数据库中取出的信息,遵从概念单一化“一事一地”的原则,即一个表描述一个实体或实体间的一种联系,并将这些信息分成各种基本实体。 例如:在教学管理数据库中,把教师、学生、课程、选课等每个实体设计成一个独立的表。三、确定所需字段1.每个字段直接和表的实体相关2.以最小的逻辑单位存储信息3.表中的字段必须是原始数据

19、4.确定主关键字字段四、确定联系1.一对一联系2.一对多联系3.多对多联系五、设计求精1.是否遗忘了字段?2.是否存在大量空白字段?3.是否有包含了同样字段的表?4.表中是否带有大量不属于某实体的字段?5.是否在某个表中重复输入了同样的信息?6.是否为每个表选择了合适的主关键字?7.是否有字段很多而记录很少的表,并且许多记录中的字段值为空?1.4 SQL基本命令1.4.1 SQL简介 SQL(Structure Query Language,结构化查询语言)是在数据库系统中应用广泛的数据库查询语言,包括了数据定义、查询、操纵和控制4种功能。主要功能:同各类数据库建立联系,进行沟通。SQL语言中

20、有两个基本概念:基本表和视图。1.4.2 SQL基本语句SELECT语句(使用最频繁)一般格式:SELECTALL/DISTINCT *| FROM WHEREORDER BYASC|DESC;:表示在实际的语句中要采用实际的内容进行替代 :表示可以根据需要进行选择,也可以不选| :表示多项选项只能选其中之一 :表示必选项n如:从教师表中查找所有男教师的信息情况,可用语句nSelect *nFrom 教师nWhere 性别=“男”1.5Access简介1.5.1Access的发展过程p201.5.2Access的主要特点和功能p201.5.3Access数据库的系统结构对象对象组组表表查询查询

21、窗体窗体报表报表数据访问页数据访问页宏宏模块模块所有对象都存放在同所有对象都存放在同一个数据库文件一个数据库文件*.mdb中,方便了数中,方便了数据库文件的管理据库文件的管理一、表n表是数据库中用来存储数据的对象,是整个数据库系统的基础。nAccess允许一个数据库中包含多个表,用户可以在不同的表中存储不同类型的数据。通过在表之间建立关系,可以将不同表中的数据联系起来,以便供用户使用。二、查询n 查询是用来操作数据库中的记录对象,利用它可以按照一定的条件或准则从一个或多个表中筛选出需要操作的字段,并可以将它们集中起来,形成所谓的动态数据集,将用户希望同时看到的来自一个或多个表中的字段显示在一个虚拟的数据表窗口中。三、窗体n 窗体是Access数据库对象中最具灵活性的一个对象,其数据源可以是表或查询。在窗体中可以显示数据表中的数据,可以将数据库中的表链接到窗体中,利用窗体作为输入记录的界面。n 窗体是数据库与用户进行交互操作的最好界面。四、报

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论