Access数据库及其应用范本模板.docx

上传人:b****8 文档编号:10390223 上传时间:2023-02-10 格式:DOCX 页数:42 大小:162.81KB
下载 相关 举报
Access数据库及其应用范本模板.docx_第1页
第1页 / 共42页
Access数据库及其应用范本模板.docx_第2页
第2页 / 共42页
Access数据库及其应用范本模板.docx_第3页
第3页 / 共42页
Access数据库及其应用范本模板.docx_第4页
第4页 / 共42页
Access数据库及其应用范本模板.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

Access数据库及其应用范本模板.docx

《Access数据库及其应用范本模板.docx》由会员分享,可在线阅读,更多相关《Access数据库及其应用范本模板.docx(42页珍藏版)》请在冰豆网上搜索。

Access数据库及其应用范本模板.docx

Access数据库及其应用范本模板

本课程主要讲述:

数据库基本理论

Access数据库操作

SQL数据库查询语句

*VBA语言及模块设计

第一章数据库基础知识

讲述内容:

1、数据管理发展史

2、数据库基本概念*

3、数据库四级结构模型

4、概念模型:

E-R模型*

5、逻辑模型:

关系模式*

6、关系运算*

7、数据规范化:

1NF,2NF,3NF*

一、数据管理发展史

1、人工管理阶段

计算机发展初期,主要用于科学计算,数据不独立,完全依赖于程序,不能共享。

2、文件管理阶段

数据以文件形式管理,数据无结构化,共享性差。

3、数据库管理阶段

数据结构化(数据库形式),出现多种数据库管理系统,共享性好。

二、数据库基本概念

1、数据库(DB):

计算机处理,结构化,数据集合。

2、数据库管理系统(DBMS):

数据库管理系统软件,提供数据库操作平台。

对数据库可以建立,添加记录,修改记录,删除、查询、排序、连接等。

常见系统VFP、ACCESS、SQLSERVER等.

3、数据库应用系统(DBAS):

利用数据库开发管理应用软件。

4、数据库系统(DBS):

和数据库有关的所有系统总和,包括计算中硬件系统、软件系统、数据库、管理者、操作者、用户。

5、信息三个世界划分:

客观世界信息世计算机世界

研究实体对象,特性→结构化,形成不同的→计算机存储结构

实体之间联系。

数据模型,关系型、面向计算机

E—R模型网状、层次型。

面向对象

(概念模型)(逻辑模型)(物理模型)

常用概念:

实体、实体集、属性、标识符———〉数据库、表、字段、记录、关键字。

6。

联系

在现实世界中,事物内部以及事物之间是有联系的,这些联系同样也要抽象和反映到信息世界中来,两个实体型之间的联系有如下三种类型:

(1)一对一联系(1:

1)

实体集A中的一个实体至多与实体集B中的一个实体相对应,反之亦然,则称实体集A与实体集B为一对一的联系.记作1:

1。

如:

班级与班长,观众与座位,病人与床位。

(2)一对多联系(1:

n)

实体集A中的一个实体与实体集B中的多个实体相对应,反之,实体集B中的一个实体至多与实体集A中的一个实体相对应。

记作1:

n.

如:

班级与学生、公司与职员、省与市。

(3)多对多(m:

n)

实体集A中的一个实体与实体集B中的多个实体相对应,反之,实体集B中的一个实体与实体集A中的多个实体相对应。

记作(m:

n).

如:

教师与学生,学生与课程,工厂与产品。

 

实际上,一对一联系是一对多联系的特例,而一对多联系又是多对多联系的特例。

可以用图形来表示两个实体型之间的这三类联系,如图书1。

7所示.

ABABAB

(a)(b)(c)

不同实体集实体之间的联系

 

三、数据库模型及DBMS功能

1、现实世界数据—---———-—〉抽象——-—--——-—〉计算机管理数据

概念模型:

用户需求观点,ER图

逻辑模型:

开发者角度,计算机实现观点,逻辑结构(层次、网状、关系)

外部模型:

用户使用观点,根据需求形成模型。

内部模型:

计算机物理结构

2、数据库管理系统主要功能.(P14解释)

3、关系模型中常用术语:

关系模型,元组,属性,域,候选键,主键,外键,完整性规则,参照完整性。

四、概念模型:

E-R模型

“实体—联系方法”的简称E-R模型。

E—R图基本成分包含实体型、属性和联系。

1实体型:

用矩形框表示,框内标注实体名称。

属性:

用椭圆形框表示,框内标注属性名称。

联系:

指实体之间的联系,有一对一(1:

1),一对多(1:

n)或多对多(m:

n)三种联系类型。

 

 

 

这样,得到学籍管理局部应用的分E-R图 

五、逻辑模型:

关系模式

1、关系模式表示:

关系名称(属性1,属性2,。

.。

)下划线代表主键

如:

学生(学号,姓名,性别,政治面貌)

2、E—R模型转化关系模式

E-R模型中,1:

1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

如班级--管理-教师联系为1:

1,我们可以将其转换为一个独立的关系模式:

班级(班级号,学生人数)

教师(职工号,姓名,性别,职称,是否优秀班主任)

管理(职工号,班级号)或管理(职工号,班级号)

管理”联系也可以与班级或教师关系模式合并。

班级(班级号,学生人数,职工号)

教师(职工号,姓名,性别,职称,是否优秀班主任)

班级(班级号,学生人数)

教师(职工号,姓名,性别,职称,班级号,是否为优秀班主任)

E—R模型中,1:

n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。

例如:

“学生--—组成-—-班级”的联系为1:

n联系。

学生(学号,姓名,出生日期)

班级(班级号,学生人数,班主任)

组成(学号,班级号)

另一种方法是将其学生关系模式(n端实体)合并,学生关系模式为:

  学生(学号,姓名,出生日期,班级号)

班级(班级号,学生人数,班主任)

E—R模型中,联系是一个m:

n联系,将联系独立出来。

如“学生—选课—课程"关系 

学生(学号,姓名,性别,年龄,所在系)

 课程(课程号,课程名,学分)

选课(学号,课程号,成绩)

如:

P22—25

旅客-—-—-乘机座位关系1:

1

旅客—---航班关系1:

n

顾客——---每种商品关系m:

n

教师(教师号,姓名)

学生(学号,姓名,性别)

课程(课程号,课程名,学时,教师号)

选课表(学号,课程号,成绩)

六、关系运算

一、关系运算

并、交、笛卡尔积;投影、选择、连接

∪(并),-(差),∩(交),X(笛卡尔积),σ(选择),∏(投影),∞(连接);

〉(大于)≥(大于等于)〈(小于)≤(小于等于)=(等于)≠(不等);

逻辑运算符:

∧(与),∨(或),┐(非)

1、并运算:

关系R和关系S的并,是R和S的所有元组合并,删去重复元组,组成一个新关系

如:

R={(李力,男),(王红,女)}S={(王红,女),(刘伟,男)}

R∪S={(李力,男),(王红,女),(刘伟,男)}

*对于关系数据库,记录的插入和添加可通过并运算实现。

2。

关系R与关系S的差,由属于R而不属于S的所有元组组成,即R中删去与S中相同的元组,组成一个新关系.

如:

R={(李力,男),(王红,女)}S={(王红,女),(刘伟,男)}

R-S={(李力,男)}

*通过差运算,可实现关系数据库记录的删除。

3。

关系R与关系S的交,由既属于R又属于S的元组组成,即R与S中相同的元组,组成一个新关系.

如:

R={(李力,男),(王红,女)}S={(王红,女),(刘伟,男)}

R∩S={(王红,女)}

如果两个关系没有相同的元组,那么它们的交为空。

4、笛卡尔积(集合中元素的组合),如D1,D2,…,Dn,它们笛卡尔积为D1×D2×……×Dn={(d1,d2,…,dn)。

|di∈Di,i=1,2,…,n}。

笛卡尔积也是一个集合。

例如:

D1={A,B,C}D2={1,2,3}

D1,D2两个域的笛卡尔积为D1XD2={(A,1),(A,2),(A,3),(B,1),(B,2),(B,3),(C,1),(C,2),(C,3)}

笛卡尔积的基数M=m1Xm2=3X3=9

例如:

D1(李力,王平,刘伟),D2(男、女)两个关系的笛卡尔积为:

D1×D2={(李力,男),(李力,女),(王平,男),(王平,女),(刘伟,男),(刘伟,女)}

基数M=m1×m2=3*2=6,元组的个数为6

笛卡尔积可用二维表的形式表示。

姓名

性别

李力

李力

王平

王平

刘伟

刘伟

例如:

RS

A

B

C

A

B

C

A1

B1

C1

A1

B1

C1

A1

B1

C2

A2

B2

C1

A2

B2

C1

A2

B3

C2

 

RUSR-S

A

B

C

A

B

C

A1

B1

C1

A1

B1

C2

A1

B1

C2

A2

B3

C2

A2

B2

C1

RnS

A

B

C

A1

B1

C1

A2

B2

C1

 

RXS

A

B

C

A

B

C

A1

B1

C1

A1

B1

C1

A1

B1

C1

A2

B2

C1

A1

B1

C1

A2

B3

C2

A1

B1

C2

A1

B1

C1

A1

B1

C2

A2

B2

C1

A1

B1

C2

A2

B3

C2

A2

B2

C1

A1

B1

C1

A2

B2

C1

A2

B2

C1

A2

B2

C1

A2

B3

C2

5.选取:

选取运算是单目运算,是根据一定的条件在给定的关系R中选取若干个元组,组成一个新关系,记作:

σF(R)={t|t∈R∧F(t)为真}

σ为选取运算符;

F为选取的条件,它由运算对象(属性名、常数、简单函数)、算术比较运算符(〉,≥,〈,≤,=,≠)和逻辑运算符(∨∧┐)连接起来的逻辑表达式,结果为逻辑值“真”或“假"。

R是从关系R中选取使逻辑表达式为真的元组,进行行运算.类似For<条件〉

 

例:

在S关系中,查询计算机系的全体学生,形成新的关系。

σDEPT=’计算机’(S)或σ5='计算机’(S)

例:

在T关系中,查询工资高于1000元的男教师。

形成新的关系。

σ(工资〉1000)∧(性别=’男')(T)

例:

在S关系中,查询姓张和姓王的工程师。

形成新的关系。

σ((姓名=‘张’)V(姓名=‘王’))∧(性别='男’)(S)

6。

投影

投影运算也是单目运算,关系R上的投影是从R中选择出若干属性列,组成新的关系,即对关系在垂直方向进行的运算,从左到右按照指定的若干属性及顺序取出相应列,删去重复元组.记作:

ΠA(R)={t[A]|t∈R}

其中A为R中的属性列,Π为投影运算符.

从其定义可看出,投影运算是按列进行的运算。

类似Fields〈字段名〉

T关系

教师号

姓名

性别

工资

系别

课程号

1001

李力

1000

计算机

C1

1002

王平

600

工商

C2

1003

王红

700

土木

C3

1004

刘伟

900

计算机

C2

 

例查询教师的姓名、教师号及其工资。

Π姓名,教师号,工资(T) 或 Π2,1,4(T)(结果为教师号,姓名,工资三个属性的关系)

姓名

教师号

工资

李力

1001

1000

王平

1002

600

王红

1003

700

刘伟

1004

900

* 投影运算可以改变关系的属性次序

例查询教师关系中有哪些系.

Π系别(T)

系别

计算机

工商

土木

计算机

 

投影后取消了某些属性列后,可能出现重复行,应该取消这些完全相同的行。

所以投影之后,不但减少了属性,元组也可能减少,新关系与原关系不相容。

例查询讲授C5课程的教师号。

Π教师号,姓名(σ课程号='C2’(T))

教师号

姓名

1002

王平

1004

刘伟

例:

检索王老师所授课程的课程号、课程名

(T关系)

Π课程号,课程名(σ姓名=’王'(T))

检索年龄大于20岁的男同学的学号和姓名(S关系)

Π学号,姓名(σ年龄〉23∧性别=’男’(S))

T关系S关系

学号

姓名

课程号

课程号

课程名

教师

1001

李力

C1

C1

法律

张老师

1002

王平

C2

C2

网络

王老师

1003

王红

C3

C3

电子

李老师

1004

刘伟

C2

C4

计算机

赵老师

检索学号为1003学生所选的课程名与任课老师.

Π课程名,教师(σ学号=‘1003’∧T。

课程号=S.课程号(TXS))

检索’李力’同学不选的课程号。

Π课程号(T)—Π课程号(σ姓名=‘李力’∧T.课程号=S。

课程号(TXS))

例R,S关系求:

RUS,R—S,RnS,RXS,Π3,2(S)

ABCABCσB〈'5’(R)

——————-———-

367345

257723

723

443

RUS-————-—--—-—R—S—-—---——-—-—RnS—---—--—--—-

ABCABCABC

------——-—-———--————-—--——-————--———

367367723

257257

723443

443

345

RXS———-----—-—-—-————------——--——---—

R.AR.BR。

CS。

AS.BS.C

-———-———--———--——-———————-—--—-—---—

367345

367723

257345

257723

723345

723723

443345

443345

Π3,2(S)-—----—---—σB〈’5'(R)————-—-————-

CBABC

--—--——---—---——-——--——-

54723

32443

7。

连接(Join)

连接运算是二目运算,是从两个关系的笛卡尔积中选取满足连接条件的元组,组成新的关系。

θ为“=”时,称为等值连接;

R∞S=σxθy(R×S)

在连接运算中,一种最常用的连接是自然连接(R*S).

所谓自然连接就是在等值连接的情况下,当连接属性X与Y具有相同属性组时,把在连接结果中重复的属性列去掉。

即如果R与S具有相同的属性组Y,则自然连接可记作:

R、S关系。

例:

RS

学号

姓名

性别

学号

平均分

总分

1001

A

1001

60

120

1002

B

1002

70

140

1003

C

1003

80

160

1004

D

1004

90

180

1005

E

R*S

学号

姓名

性别

平均分

总分

1001

A

60

120

1002

B

70

140

1003

C

80

160

1004

D

90

180

例:

设关系R:

S:

 

ABBC

--—-———————

abbc

cbea

debd

求:

R∞S,σA=C(R×S),R*S

B

________________________________________________

AR。

BS。

BCAR。

BS。

BCABC

________________________________________________

abbcabeaabc

cbbccbbcabd

abbddebdcbc

cbbdcbd

dea

T教师关系TC授课关系C关系

TNO

TN

SEX

AGE

TNO

CNO

CNO

CN

CT

T1

李力

30

T1

002

001

数据库

60

T2

王平

40

T2

001

002

法律

40

T3

刘伟

26

T3

001

003

英语

90

T4

张雪

34

T4

002

T5

张兰

45

T5

001

例:

查询讲授数据库课程的教师姓名。

ΠTN(σCN=’数据库’(C)*ΠTNO,CNO(TC)*ΠTNO,TN(T))或

ΠTN(ΠTNO(σCN=’数据库'(C)*TC)*ΠTNO,TN(T))

TN

王平

刘伟

张兰

笛卡尔积、等值连接、自然连接区别:

笛卡尔积产生的新关系的目是两个关系(k1+k2)的和,元组的和是两个关系的积。

等值连接是在笛卡尔积的基础上,挑选分量值相等的元组连接,不要求属性名相同。

自然连接要求相等属性值的属性名必须相同,即两关系只有在同名属性才能进行连接。

等值连接不将重复属性去掉,而自然连接去掉重复属性。

R关系S关系T关系

X

Y

Y

Z

X

Y

Z

A

B

B

E

A

B

E

C

D

D

F

C

D

F

D

G

C

D

G

A.T=R∞SB.T=RUSC.T=R*SD.T=R×S

七、数据规范化:

1NF,2NF,3NF

   所谓范式是指规范化的关系模式。

由于规范化的程度不同,就产生了不同的范式。

一个好的关系模型四个条件:

尽量减少冗余、没有插入、删除、更新异常.

1、第一范式

   关系中的每个属性必须是不可再分的简单项,不能是属性组合。

例:

某人设计了一个关系模式如下:

S(S#,SN,SA,SS,SD,DN,C#,GR)

   其中S是关系模式名,S#表示学生学号,SN表示学生姓名,SA表示学生年龄,SS表示学生性别,SD表示学生所在的系别,DN表示学生所在系的系主任,C#表示学生选修的课程号,GR表示学生选修该课程时的成绩。

   在关系模式S中,关键字是(S#,C#)。

S#      SN     SA   SS     SD     DN    C#   GR

94001   王言   18   男   机械系   田放   C1   88

94001   王言   18   男   机械系   田放   C2   74

94001   王言   18   男   机械系   田放   C3   82

94001   王言   18   男   机械系   田放   C4   65

94002   刘里   19   男   机械系   田放   C1   92

94002   刘里   19   男   机械系   田放   C2   95

94002   刘里   19   男   机械系   田放   C3   91

94002   刘里   19   男   机械系   田放   C4   78

94003   张兰   18   女   材料系   王敏   C5   72

94003   张兰   18   女   材料系   王敏   C2   75

94003   张兰   18   女   材料系   王敏   C4   79

94003   张兰   18   女   材料系   王敏   C3   80

可见:

   关系模式S中所有的属性都是不可再分的简单属性。

因此,关系模式S属于第一范式。

   通过分析,我们不难发现关系模式S不是一个好的关系模式.

   关系模式S存在的问题:

(1)冗余大。

每一个系名和系主任的名字存储的次数等于该系学生人数乘以每个学生选修的课程门数;

(2)插入异常。

一个新系没有招生时,系名和系主任名无法插入到数据库中,因为这个关系模式中的关键字是(S#,C#),而这时没有学生因而S#无值,所以没有关键字值,关系数据库无法操作,因此,引起插入异常.

(3)删除异常。

当一个系的学生都毕业了而又没有招新生时,删除了全部学生记录,随之也删除了系名和系主任名.这个系依然存在,而在数据库中却无法找到该系的信息。

(4)更新异常.若某系主任更换,数据库中该系的学生记录应全部修改。

如有不慎,某些记录漏改了,则造成数据的不一致。

称之为更新异常.

2、第二范式

   第二范式就是在满足第一范式条件的基础上,关系模式的非关键字属性都由整个关键字决定(而不是关键字的一部分)。

   就上例而言,如果我们把关系模式S变成如下的两个关系模式:

SR(S#,SN,SA,SS,SD,DN)SC(S#,C#,GR)

SR关系:

S#      SN    SA   SS     SD     DN    

94001   王言   18   男   机械系   田放   

94002   刘里   19   男   机械系   田放   

94003   张兰   18   女   材料系   王敏   

SC关系:

S#        C#   GR

94001      C1   88

94001      C2   74

94001      C3   82

94001      C4   65

94002      C1   92

94002      C2   95

94002      C3   91

94002   C4   78

94003     C5   72

94003      C2   75

94003     C4   79

94003   C3   80

这时,在关系模式SR中,S#→(SN,SA,SS,SD),SD→DN。

在关系模式SC中,(S#,C#)→GR。

   这样就很好地解决了非关键字属性由关键字的一部分来决定的问题。

关系模式SR,SC符合第二范式条件的关系模式。

第二范式的关系模式仍然存在一些问题:

   就SR而言

(1)数据冗余。

在关系模式SR中,系主任名存储的次数与学生数一样多.

(2)插入异常。

当某个系的学生全部毕业而没有新生入校时,删除了学生记录也随之删除了这个系的信息.

3、第三范式

   第三范式就是符合第二范式,并且每个非关键字属性都仅由关键字决定,而且一个非关键字属性值不依赖于另一个非关键字属性值。

(消除第二范式中函数依赖传递关系)

   就SR而言,我们可以把它分解为SS和RD两个关系模式:

SS(

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 中医中药

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1