数据库概念各章知识点总结

数据库概念各章知识点总结
数据库概念各章知识点总结

数据库总结(分章节)

第一章数据库理论

重点:E-R模型(实体联系数据模型,其属于概念数据模型)到关系模型的转换

1、单个实体的关系实现

2、两个实体一对一(1:1)联系的关系实现

3、两个实体一对多(1:n)联系的关系实现

4、两个实体多对多(m:n)联系的关系实现

5、三个实体间联系的关系实现

6、同一实体型内部各实体间联系的关系实现

知识点:

1、数据管理技术分为三个发展阶段:人工管理阶段,文件系统阶段,数据库系统阶段。

2、数据是描述现实中某种事物的形式化表达方式。

3、数据库(DB)是指逻辑上相关的、长期存储在计算机中的、有组织的、可共享的数据集合,其特点有五点:共享性、结构化、独立性、低冗余度、易维护。

4、数据库管理系统(DBMS):用于对数据库管理的系统软件,是创建数据库、组织和维护数据库中的数据进行查询及增、删、改等操作的重要工具。

5、数据库系统(DBS=DB+DBMS):指在计算机系统中引入数据库后的系统组成,一般由数据库、数据库管理系统、应用程序及数据库管理员和用户组成。

6、数据模型分三级:概念数据模型、逻辑数据模型、物理数据模型。

7、概念数据模型——E-R模型表示方法:矩形—实体;椭圆形—属性;菱形—联系;线段—连接(1:1;1:n;m:n)

8、逻辑数据模型分为四类:层次数据模型、网状数据模型、关系数据模型、面向对象的关系数据模型。

9、关系就是一张二维表:关系、元组(每一行)、属性(每一列)、关系模式(学生(学号,姓名,性别,专业名称))、域、候选键、主键(常用的候选键)、外键(建立关系间的联系)。

10、关系运算:

(1)传统集合运算:并、交、差、广义笛卡尔积运算

(2)专门关系运算:选择(σ性别=“男”(病人表A))、投影(π病例号,病人姓名(病人表A))、联接(自然联接等)、除

10、关系完整性规则:实体完整性规则,参照完整性规则,用户完整性规则

11、Access2007数据库文件格式为ACCDB

第二章创建数据库

重点:创建简单表

1、使用模板创建:“创建”选项卡--“表”组--“表模板”--“联系人”选项(任务、问题、事件、资产)--修改--“保存”,“重命名”

2、使用字段模板创建:“创建”选项卡--“表”组--“表”--“字段和列”组中“新建字段”(自动弹出“字段模板”)--修改新加字段数据类型和格式:切换到“数据表”选项卡--“数据类型和格式”组中的“数据类型”和“格式”下拉按钮--“保存”“另存为”“重命名”

3、使用表设计创建:“创建”选项卡--“表”组--“表设计”--“命名”--逐一输入字段名--定义字段“数据类型”及字段属性--设置“主键”--创建字段索引--“保存”

知识点:

1、创建数据库的三种方法:创建空白数据库,使用模板创建数据库,使用现有文件创建。

2、拆分数据库的目的是提高系统工作效率和安全性。

3、表中的“列”称为“字段”。字段的数据类型是创建表时,需要为每个字段定义它所存储的数据类型。

4、字段属性就是字段所存储数据的特性,例如:字段格式、字段值的大小、如何使用、是否可索引等。

5、修改数据表结构:

(1)打开的表或正在使用的表是不能进行修改的,修改时必须先将表关闭。

(2)在网络环境下更改数据库表时,必须保证所有用户均已退出。

(3)修改关系表中的关键字段时,必须先将关联去掉。

(4)当一次修改多个表时,应先将整个数据文件备份。

6、数据的有效性是指用户输入的数据类型或数据值的有效性,它是数据库应用安全的主要保障。制定有效性规则可以限制或控制用户在表字段或窗体上的的控件(如文本框)中输入

哪些内容。

7、字段有效性:使用字段有效性规则可检查在该字段中输入的值。

8、记录(或表)的有效性规则:引用同一个表中的其他字段,可以控制何时保存记录。

9、创建表达式规则:表字段的名称用[]括起来;日期用#括起来;文本用双引号括起来;用逗号分隔项目,并将列表放在原=圆括号内。

10、Access2007表之间的关系:一对一,一对多,多对多。

11、表的索引(P57)

12、创建表关系(P60)

第三章数据查询与SQL命令

重点:SQL命令(结构化查询语言)

知识点:

1、查询的种类:选择查询(简单选择查询、统计查询、重复项查询、不匹配查询),交叉表查询,参数查询、操作查询(生成表查询、追加查询、更新查询、删除查询),SQL特定查询。

2、创建查询可以利用:查询设计与查询向导。

3、查询可实现:选择字段、选择记录、排序记录、完成计算。

4、查询试图:设计师图、SQL视图、数据表视图。

5、查询向导只能创建选择查询,包括:简单查询向导、交叉表查询向导、查找重复项查询、查找不匹配项查询向导。

6、具体创建查询方法

(1)选择查询:

“创建”选项卡--“其他”组--“查询向导”,弹出“新建查询”--

①选择“交叉表查询向导”--选择表--选择行标题--选择列标题--选择进行交叉统计的字段--指定查询名称--“完成”。

②选择“查找重复项查询”--选择表--设置重复值字段--选择其他查询字段--指定查询名称--“完成”。

③选择“查找不匹配项查询向导”--选择表--选择相关表--设置匹配字段,单击“<=>”--选择所需查询字段--指定查询名称--“完成”。

(2)参数查询:(以单参数为例)

“创建”选项卡--“其他”组--“查询设计”--添加表--将所需字段加到查询网格--在相应字段“条件”行中输入“[输入XX:]”--单击“设计”选项卡中的“结果”组中的“运行”--在弹出的“输入参数值”对话框中输入相应值,单击“确定”。

(3)操作查询:

“创建”选项卡--“其他”组--“查询设计”--添加表--

①生成表查询:单击“设计”选项卡的“查询类型”组中的“生成表”--输入表名称--选择“当前数据库”按钮,点击“确定”--将查询字段添加到网格--在对应“条件”字段输入[XX: ]--单击“设计”选项卡中的“结果”组中的“运行”--在弹出的“输入参数值”对话框中输入相应值,单击“确定”,单击“是”。

②追加查询:单击“设计”选项卡的“查询类型”组中的“追加”--输入表名称--将查询字段添加到网格--在对应“条件”字段输入[ ]--单击“设计”选项卡中的“结果”组中的“运行”--单击“是”。

③更新查询:单击“设计”选项卡的“查询类型”组中的“更新”--双击条件字段和更新字段将其添加到查询网格中--在对应“条件”字段输入[ ]--单击“设计”选项卡中的“结果”组中的“运行”--单击“是”。

④删除查询:单击“设计”选项卡的“查询类型”组中的“删除”--将查询字段添加到查询网格中--在对应“条件”字段输入[ ]--单击“设计”选项卡中的“结果”组中的“运行”--单击“是”。

(4)交叉表查询(针对一个表):

“创建”选项卡--“其他”组--“查询设计”--添加表--单击“设计”选项卡的“查询类型”组中的“交叉表”--双击表中的字段添加到查询网格中--选择字段的交叉表行的“行标题、列标题、值”--单击“设计”选项卡中的“结果”组中的“运行”。

第四章使用外部数据

1、外部数据:存储在当前数据库外的数据,Access数据库可以引用存储在另一个Access 数据库或其他数据库中的数据,以及使用其他文件格式存储的许多数据。

2、数据的导入与导出:与外部数据进行信息交换的过程。

3、外部数据类型可通过“外部数据”选项卡的“导入”组进行查看,单击“其他”按钮在下拉菜单还包含很多文件类型。

4、Access可导入文件类型:Excel表、Sharepoint列表、文本文件、XML文件、HTML文件、Outlook文件夹、数据库文件(Access数据库,ODBC数据库,dBASE文件、Paradox

文件、Lotus文件)

5、导入外部数据:将外部数据转化为Access的数据或数据库对象,即将其他格式的数据放到Access中,并实现对他们的调用。

具体步骤:打开数据库--“外部数据”选项卡--“导入”组--文件类型按钮--

6、导出数据:将Access数据库中的数据输出到其他数据库或者存储为其它格式文件。

导出数据类型:Access数据库、Excel表格、Word中的邮件合并提供的数据源等

具体步骤:打开数据库--“外部数据”选项卡--“导出”组--文件类型按钮--

7、链接与导入的本质区别:导入是将源数据复制到目标对象中,导入后的数据与源数据没有任何关系。链接只是建立了引用关系,并没有将源数据复制,链接后的数据会随着源数据的变化而变化。

8、链接具体步骤:打开数据库--“外部数据”选项卡--“导入”组--文件类型按钮--“浏览”导入选择的数据库--在“指定数据在当前数据库中的存储方式和存储位置”选项区域选择“通过创建链接表链接到数据源”单选按钮--单击“确定”--弹出“链接表”--选择要链接的表

9、对于链接表,如果要添加、删除字段或者更改字段属性或数据类型,必须在源数据表中进行。

10、Access2007可根据数据表中的信息群发电子邮件,并可生成和发送具有数据输入表单的电子邮件,还可与Outlook2007一起使用,一遍快捷地收集数据。

第五章窗体设计与制作

重点:创建窗体

1、直接创建窗体:

打开数据库--在导航窗格选择相应表为数据源--“创建”选项卡--单击“窗体”组的“窗

体”按钮--“保存”

2、使用向导创建窗体:

“创建”选项卡--单击“窗体”组的“其他窗体”按钮,选择“窗体向导”--选择表为数据源--选择相应字段--选择布局类型(纵栏表、表格、数据表、两端对齐)--设置窗体样式--设置窗体标题--选择“打开窗体查看或输入信息”--“完成”

3、窗体设计视图

“创建”选项卡--单击“窗体”组的“窗体设计”按钮--右击窗体选择器,选择“属性”命令--“数据”选项卡的“记录源”下拉列表选择相应表作为记录源--“设计”选项卡“工具组”中“添加现有字段”按钮--打开“字段列表”面板,将所需字段拖入窗体主题--右击窗体主体,选择“窗体页眉/页脚”--添加相应控件--保存

知识点:

1、Access窗体是用户与Access数据库交互的一个窗口。

2、窗体中的信息主要有两类:设计窗体时附加的提示信息;处理表或查询的记录。

3、窗体功能:显示编辑数据,控制应用程序的流程,显示信息,打印数据

4、窗体的结构:窗体页眉、页面页眉、窗体主体、页面页脚、窗体页脚。

5、窗体的种类:纵栏式窗体、表格式窗体、数据表窗体、主/子窗体、图表窗体、数据透视窗体。

6、窗体的属性表面板:格式、数据(控件来源、输入掩码、有效性规则、可用、是否锁定、智能标记等)、事件、其他、全部。

7、“设计”选项卡:视图、字体、网格线、控件、工具。

8、在窗体中使用控件:

(1)命令按钮:

Access2007命令包括六类:记录导航、记录操作、窗体操作、报表操作、应用程序、杂项。

(2)使用文本框:(文本框用于在窗体和报表中查看和编辑数据的标准控件)

添加绑定文本框方法:

①将字段从“字段列表”面板中拖动到窗体或报表上;

②在设计视图中添加绑定文本框

(3)使用选项卡(用于创建多页窗体,可以在文件夹形式的界面中显示多页)

(4)使用复选框、选项按钮和切换按钮显示“是/否”值

(5)使用选项组(显示一组有限的替代选项,一次只能从一个选项组中选择一个选项。由一个组框、一组复选框、切换按钮或选项按钮组成)

(6)使用列表框(用于显示值或选项的列表)和组合框(以更紧凑的方式显示选项列表)

9、在使用窗体时,可以通过按【Tab】键在控件之间进行切换。

(1)更改控件的【Tab】键次序:当使用向导或布局之类的工具创建窗体时,Access会将【Tab】键次序设置为与控件在窗体上的显示顺序相同,即从上倒下和从左到右。

(2)从【Tab】键次序中删除控件

(3)更改Tab键次序中最后一个字段的【Tab】键行为

10、子窗体:插入到其他窗体中的窗体。当要显示有一对多关系的表或查询中的数据时,使用子窗体非常有效。

第六章报表

知识点:

1、报表是专门为打印而设计的特殊窗体,Access使用报表来实现打印数据功能。

2、报表结构:三种视图

(1)报表视图:提供查看报表数据非常清晰的方式,但不提供任何数据操作功能。

(2)布局视图:提供数据显示功能,能够对报表的布局进行一些操作,如调整报表的列宽、添加分组级别及修改报表上的文字等。

(3)设计视图:对报表进行设计和修改的主要“场所”,提供了报表结构的更详细视图,通过对各部分进行设置可以完成对报表的操作。主要包括:报表页眉、页面页眉、主体、页面页脚、报表页脚。

在分组和排序是,有可能需要组页眉和组页脚节。(这是窗体没有的)

组页眉:可以在每个新记录组的开头打印。使用组页眉可以打印组名称。

组页脚:可以在每个记录组的结尾打印。使用组页脚可以打印组的汇总信息。

3、报表的种类:表格式报表、纵栏式报表、标签式报表

4、创建报表:

(1)使用简单报表:

打开数据库--在导航选择相应表--“创建”选项卡的“报表”按钮

(2)使用空报表:

“创建”选项卡的“报表”组中单击“空报表”按钮--“格式”选项卡中“控件”组的“添加现有字段”按钮--打开“字段列表”面板--将所需字段从“字段列表”面板中拖动到空报表中,形成报表。

(3)使用报表向导:

“创建”选项卡的“报表”组中单击“报表向导”按钮--选择相应表为数据源和字段--设置分组级别--明确信息的排序次序和汇总信息--设置报表布局方式--确定报表样式--确定报表

标题--“完成”

(4)使用报表的设计视图

“创建”选项卡的“报表”组中单击“报表设计”按钮--打开“属性表”面板--“所选内容类型”下拉列表选择“报表”选项--在“数据”选项卡中的“记录源”属性中选择相应表作为数据源--在“设计”选项卡的“控件”组添加相应控件--在“设计”选项卡的“工具”组单击“添加现有字段”,将所需字段拖入主体--“保存”

5、子报表:插入在另一个报表中的报表,而包含子报表的报表称为主报表(一对多关系)

6、排序:按某个字段值将记录排序。

7、组:记录的集合,并且包含可以与记录一起显示的介绍性内容和汇总信息(如页眉)。由组页眉、嵌套组、明细记录、组页脚组成。

8、简单的排序、分组、汇总操作执行方式:

(1)在布局视图中右击字段,然后从快捷菜单中选择所需的命令。

(2)使用“分组、排序、汇总”窗格添加分组、排序和汇总。

第七章宏

1、宏是Access2007数据库对象,是一个或多个宏操作狗策划那个的集合。宏中的每一个宏操作都可以实现特定的功能。宏操作是由Access2007的VBA中的一些命令子集编写成的。

2、宏的分类:

(1)基本宏:结构最简单,由一系列按顺序排列的宏操作构成,其中每个宏操作可以完成一个指定的动作。

(2)宏组:当为了完成一项功能使用多个宏时,将这些宏组成一个宏组,以便于数据库的管理。调用宏组的宏格式:宏组名.宏名

3、宏的设计视图:创建、修改宏的界面。窗格有5栏:宏名、条件、操作、参数、注释。

4、宏的创建

(1)创建基本宏:

“创建”选项卡“其他”组中单击“宏”按钮--打开宏的设计视图--添加宏操作--设置宏操作的操作参数--保存宏

(2)宏的条件操作:条件操作是指当满足一定条件时,才执行相应的宏操作。

(3)创建宏组

5、运行宏:

(1)直接运行宏:“设计”选项卡--“工具”组中的“运行”按钮

“数据库工具”选项卡--“宏”组中“运行宏”按钮--输入宏名,“确定”

(2)单步执行宏:新建宏--创建宏“单步执行宏”--关闭宏--单步测试宏

(3)事件触发宏:

①通过命令按钮自动调用宏(命令按钮向导“类别”中的“杂项”--“操作”中的“运行宏”)②在控件的事件属性中添加宏。

6、宏的高级操作

(1)宏组的使用

“创建”选项卡“其他”组中单击“宏”按钮--“设计”选项卡--“显示于隐藏”组中的“宏名”和“条件”按钮--设计宏(e.g.“条件”的逻辑表达式“[Forms]![登录]![psw]=123456”)--保存宏组--调用宏组

(2)宏的嵌套(RunMacro)

(3)菜单宏的使用(AddMenu)

(4)自动运行的宏(AutoExec)

7、常用的宏操作:

(1)打开或关闭操作对象:

OpenFrom打开窗体;OpenReport打开报表;OpenQery打开查询;Close关闭数据库对象

(2)运行和控制流程:

Quit退出Access2007

(3)设置值

SetValue设置属性值

(4)刷新、查找数据或定为记录

Requery刷新控件数据;FindRecord;FindNext查找满足指定条件的第/下一条记录;GoToRecord指定当前记录

(5)控制显示

Maximize;Minimize最大/小化激活窗口;Restore恢复至原始大小

(6)通知或警告用户

Beep“嘟嘟”;MsgBox显示消息框

第八章VBA编程

1、当用户有特殊要求时,可以通过VBA来完成如下操作:设置用户自己的函数;编写复杂的表达式;同时打开两个或两个以上的数据库文件;将宏操作转换为VBA代码。

2、进入VBA编辑环境的方法:

(1)“创建”选项卡--“其他”组中单击“宏”下拉按钮,选择“模块”

(2)“数据库工具”选项卡--“宏”组的Visual basic按钮

3、数据类型:数据在计算机的计算过程中有一定的存在形式,不同形式有不同的存储方式。Access2007提供12种数据类型:

(1)String字符串类型:包括字母、数字、标点、汉字、空格等。字符串变量用””括起来。

定义方法:Dim 变量名as string

(2)数值类型:分为Integer整数型;Long长整数型;Single单精度型;Double双精度型。(3)Boolean布尔型:只有True和False两种取值。

(4)Date日期型

(5)Currency货币型

(6)Variant变体型

4、变量:内存中申请的一个存储空间,这个空间用来储存不断变化的变量值,程序通过变量的名称查找其存储空间,从而读取变量的值。

变量值:程序通过赋值语句可以改变变量的取值,被改变的变量值将存储在指定的内存空间中,以供程序调用

5、常量:在程序运行过程中不发生数值改变的固定数值,通常是在程序中经常或者被经常调用的一个固定数值。

6、数组:具有相同变量名的顺序排列的一系列变量。每个变量的排列顺序成为数组变量的下标,带有下标的变量成为数组元素。

7、VBA运算符

(1)算术运算符:

/ 浮点出发;\ 整数除法;Mod取余数除法。

e.g.在立即窗口输入?25 Mod 5

(2)比较运算符

(3)逻辑运算符:Xor异或--两个表达式逻辑值相同为假;Eqv等价--两个表达式逻辑值相同时为真

(4)运算的优先级:函数最先,等价最后。

8、函数和表达式:

(1)数学函数:Log,Exp;Int,Fix;Sgn;Sqr;Rnd

(2)字符串函数:Trim(string);Left(string,x);Mid(string,start,x);Ucase(string),Lcase(string);Space(x);Asc(string)

(3)转换函数:Val(string)转换为数据型;Str(number)转换为string

(4)时间函数:Time() ;Minute() ;Hour()

9、VBA的程序结构:

(1)顺序结构

(2)分支结构

(3)循环结构

10、VBA语句类型:声明语句、赋值语句、可执行语句

其他:输入语句、输出语句、注释语句

11、VBA可把过程分为两类:

(1)事件过程:(当某一事件发生时,某个对象对这个事件做出反应而执行的程序片段)

事件过程有两个重要因素:一是有事件发生,二是事件的发生与对象有关。

注:过程定义中的Private表示当前过程是一个私有过程,此过程中的变量定义、声明仅在此过程中有效。

(2)通用过程:(当需要在多个对象的多个事件中执行同样的操作时,可使用通用过程完成)

通用过程分为:子过程(Sub)和函数(Function)两种

注:Public对任何过程都有效(与Private相反)

在函数主体当中,通常在End Function语句之前有“过程名=<表达式>”这句语句,这里的过程名是函数的名称,通过这个赋值将结果传递回去,并调用函数过程。如果没有这句语句,函数值将返回一个系统默认的数值。

12、VBA程序模块

(1)标准模块(存放通用过程)

(2)类模块(报表、窗体)

13、VBA代码的运行和调试

(1)程序的调试环境:可通过本地窗口、立即窗口、监视窗口来跟踪程序的运行情况。

(2)断点:在程序中的某个特定语句上设置一个位置点,可在这里中断程序的执行,从而可以在这个点上查看程序的执行情况。

附送1:

SQL命令(简单查询)

一、Select子句,From子句

select *

FROM 病人

注意“*”用法(显示全部)

select PID as 病历号,姓名,性别,year(date())-year(出生日期) as 年龄

FROM 病人;

注意“as”和“year”用法

select PID as 病历号,姓名&"是个"&性别&"人",year(date())-year(出生日期) as 年龄FROM 病人;

注意“&”(连接符用法)

select distinct 性别

FROM 病人

注意“distinct”用法(显示结果只取不同的值)

二、Where子句

select *

FROM 病人

where 性别="男"and 文化程度="本科"

注意“*”和“where”和“and”和“=”用法

select *

FROM 病人

where 出生日期>=#1990-12-31#

注意“where”和“#”和“>=,<=”用法

select *

FROM 病人

where 出生日期between #1990-12-31# and #2010-1-1#

注意“where”和“#”和“between”用法

[between前可加not,意思相反]

select *

FROM 病人

where 性别in ("女")

注意“where”和“in”用法

select *

FROM 病人

where 姓名in ("张有病","王有病")

三、like子句

【通配符:?或_表示任何一个单一字符;*或%表示任意长度的字符;#表示0-9之间的单一数字;[字符列表]表示在字符列表中的任一值;[ ! 字符列表]表示不在字符列表中的任一值】

(绿色表示Access不支持)

select *

FROM 病人

where 姓名like"王*"

注意“like”和“where”和“*”用法

select *

FROM 病人

where 联系方式like"#######[28]"

注意“like”和“where”和“#”用法(电话最后一位是2或8,如果不是2且8,则变为[!28])

日期前加#,字符要加””

四、order by子句

select *

FROM 病人

order by 性别desc, 姓名

注意“order by”和“desc(降序)”用法,(asc或省略不写为升序)

五、group by子句(应用统计函数分组计算)

Sum();Avg();Count();Max();Min();First();Last();

stDev();Var();VarP()

select 性别,avg(挂号费) as 平均挂号费,count(DID) as 个数

FROM 医生

group by 性别having 性别="男"

注意“group by”和“having”(筛组)和“avg,count”用法

补充内容:

select *

FROM 医生

where 性别is null

(查找性别栏是空的)

select *

FROM 医生

where 性别is not null

(查找性别栏不是空的)

附送2:SQL命令(高级查询)

一、连接查询(inner join)

select 姓名,医生.DID,挂号时间,PID

FROM 医生inner join 挂号表on 医生.DID=挂号表.DID

where 姓名like "贾*"

涉及医生表和挂号表(2个表)

select 医生.姓名,count(医生.DID)

FROM (医生inner join 挂号表on 医生.DID=挂号表.DID) inner join 病人on 挂号表.PID=病人.PID

group by 医生.姓名

涉及医生表和病人表和挂号表(3个表)

Select 姓名,性别from 一班where 性别=”男”

Union

Select 姓名,性别from 二班where 性别=”女”

Select 医生.姓名,医生.DID,病人.姓名,病人.PID,挂号时间

FROM(医生inner join 挂号表on 医生.DID=挂号表.DID)inner join 病人on 挂号表.PID=病人.PID

Where 出诊科室="妇产科"

查询块(select, from, where)

二、嵌套查询

Select 姓名from 医生

where DID in (select DID from 挂号表where 挂号时间=#2012-11-20#)

select 姓名from 医生inner join 挂号表on 医生.DID=挂号表.DID where 挂号时间

=#2012-11-20#

(用连接查询,达到相同目的)

Select 姓名from 病人where PID in (select PID from 挂号表where DID in (select DID from 医生where 姓名="贾赫尘"))

(三层嵌套,查找被贾赫尘大夫看过的病人)

Select 姓名from 病人where 出生日期>=all(select 出生日期from 病人)

(all用法;查找年龄最小的病人姓名)

Select 姓名from 病人where PID in (select PID from 挂号表where DID in (select DID from 医生where 职称="住院医师"))

Select 姓名as 没人找他看病的医生姓名from 医生where DID not in (select DID from 挂号表)

(as用法;查找没人找他看病的医生)

建表的命令

create table 学生2

(学号integer primary key,

姓名text,

性别text,

专业text,

出生日期date,

备注memo)

建立索引

Create index i1 on 学生2 (姓名,专业)

插入数据

Insert into 学生2(学号,姓名,性别,专业) values (222222,”王二二”,”男”,”三年制医疗”)

数据修改

Update 学生2 set 性别=”女”,专业=”五年制医疗” where 学号=222222

删除数据

Delete from 学生2 where 姓名=”王二二”

附送3:VBA编程(课上练习)

If语句例1

Sub Li2()

Dim n As Integer

n = Val(InputBox("请输入任意正整数:", "输入窗口"))

If n Mod 2 = 1 Then

MsgBox (Str(n) + "是奇数")

Else

MsgBox (Str(n) + "是偶数")

End If

End Sub

If语句例2(当输入小数时,显示其最接近整数的值是奇数还是偶数)

Sub Li2()

Dim n As Integer

n = Val(InputBox("请输入任意正整数:", "输入窗口"))

If n > 0 And n = Int(n) Then

If n Mod 2 = 1 Then

MsgBox (Str(n) + "是奇数")

Else

MsgBox (Str(n) + "是偶数")

End If

Else

MsgBox ("输入错误,程序结束!")

End If

End Sub

If语句例3(当输入小数时,显示输入错误)

Sub Li2()

Dim n As Integer

Dim x As Single

x = Val(InputBox("请输入任意正整数:", "输入窗口")) If x > 0 And x = Int(x) Then

n = x

If n Mod 2 = 1 Then

MsgBox (Str(n) + "是奇数")

Else

MsgBox (Str(n) + "是偶数")

End If

Else

MsgBox ("输入错误,程序结束!")

End If

End Sub

If语句例4

Sub li4()

Dim n As Integer

n = Val(InputBox("请输入一个分数:", "输入窗口"))

If n >= 90 Then

MsgBox ("分数为" + Str(n) + "评为优!")

ElseIf n >= 80 Then

MsgBox ("分数为" + Str(n) + "评为良!")

ElseIf n >= 70 Then

MsgBox ("分数为" + Str(n) + "评为中!")

ElseIf n >= 60 Then

MsgBox ("分数为" + Str(n) + "评为及格!")

Else

MsgBox ("分数为" + Str(n) + "评为不及格!")

End If

End Sub

Case语句1

Sub li5()

Dim ch, chresult, ts As String

ts = "请选择挂号类别:" + Chr(10) + Chr(13) + "1:主任医师,2:副主任医师,3:主治医师,4:特需门诊"

ch = InputBox(ts)

Select Case ch

Case "1"

chresult = "您选择了主任医师,挂号费10000元"

Case "2"

chresult = "您选择了副主任医师,挂号费9999元"

Case "3"

chresult = "您选择了副主任医师,挂号费9998元"

Case "4"

chresult = "您选择特需门诊,挂号费9997元"

Case Else

chresult = "输入错误,笨蛋!"

End Select

MsgBox (chresult)

End Sub

Sub li6()

Dim sum As Integer

sum = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 MsgBox ("1+2+3+...+10=" + Str(sum))

End Sub

循环语句

Sub li6()

Dim sum, i As Integer

sum = 0

For i = 1 To 100 Step 1

sum = sum + i(循环体)

Next i

MsgBox ("1+2+3+...+100=" + Str(sum))

End Sub

Sub li6()

Dim sum, i As Integer

sum = 1

For i = 1 To 5 Step 1

sum = sum * i(循环体)

Next i

数据库基本概念

数据库基本概念 引言 本章的目标是讲解数据库研究人员常常要使用到的一些理论和术语。我所在的工作组集中了一批以开发性能优异的数据库系统为谋生手段的精英,数据库理论乍看起来与我们的具体工作相距甚远。 是否很有必要学习有关数据库理论方面的知识可能是留给你思考的一个问题。我们说,理解一种技术的基本原理是非常重要的。这就好比把你的汽车交给一个不懂火花塞工作原理的机械师,或是坐在一架由不懂飞行理论的驾驶员的飞机上。如果你不懂数据库设计的相关理论,又怎能指望用户登陆门请你设计系统呢? 研究人员所用的某些术语和概念令我们感到困惑,部分原因是数学基础的问题。有一些术语,大多数程序员理解为一种含义,而实际上是完全不同的另一种含义。为了能设计合理的系统,了解关系数据库理论是十分重要的。 为了搞清楚研究人员的专业术语,我们需要学习一些关系数据库理论中较浅显的内容,并且同我们所熟知的SQL概念进行比较。许多书中都讲解了这些内容,所以并不打算过于深入地探讨理论。我们只提供一些基本且实用的数据库概念。 本章将主要从面向SQL的角度介绍关系理论。我们将常常涉及相关理论的具体实现,尽管这超出了本书的范围,但却是难以避免的。然而我们不会陷入实现的细节,仅仅给出一个概述。更进一步的内容,参看第一章提到的参考书目。 在本章中,我们将会看到下列内容: ?关系模型——考察相关的技术术语:我们将在后面的章节中构造它们 ?其他数据库概念的定义 关系模型 正像第1章中提到的,E.F.Codd早在1970年就提出了关系模型的概念。在这一节中,我们将从SQL Server 的角度出发,考察一些在关系模型中比较重要的内容。 正像我们所看到的那样,SQL Server 与关系模型有很多共性的东西,但

excel期末知识点总结

1.文件的建立与打开: office图表新建新工作簿确定 打开 2.文件的保存与加密保存: office图表保存 xls 准备加密文档输入密码确定再次输入并确定 3.强制换行:alt+enter 4.删除与清除:删除整个单元格,清除格式、内容、批注 5.填充序列: 等差等比: 在单元格中输入起始值开始填充序列选择等差等比、行列输入步长值、终止值 文字序列: 在单元格输入文字序列 office按钮 excel选项常用编辑自定义序列选中刚才输入的文字序列导入确定6.复制移动: 移动覆盖左键拖拽 复制移动覆盖 ctrl+左键拖拽 移动插入 shift+左键拖拽 复制移动插入 ctrl+shift+左键拖拽 7.插入行列:选中要插入数量的行或列右键插入 8.为行、列、单元格命名: 先选中要命名的区域在左上角的名称框内输入名字 直观,快速选定 如何删除名称:公式名称管理器选中删除 9.批注:单击单元格审阅新建批注 10.科学计数法: >=12位用科计表示 123456789012=1.234567E+11 1.A3=R3C1 R为行C为列 C1 C2 C3 R1 R2 R3A3 2.数组运算Ctrl+Shift+Enter 3.将某一函数,作为另一函数的参数调用。最多可以嵌套七层 COUNT(参数1,参数2,…)功能:求一系列数据中数值型数据的个数。 COUNTA(参数1,参数2,…)功能:求“非空”单元格的个数。 COUNTBLANK(参数1,参数2,…)功能:求“空”单元格的个数。 COUNTIF功能:求符合条件的单元格数 4.四舍五入函数ROUND(number, num_digits) =ROUND(1234.567,2)=1234.57 =ROUND(1234.567,1)=1234.6 =ROUND(1234.567,0)=1235 =ROUND(1234.567,-1)=1230 =ROUND(1234.567,-2)=1200 负的往左,正的往右

数据库原理与应用知识总结

关系范式: 1.设有关系模式:学生修课管理(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。 设一名学生可以选修多门课程号,一门课程号可以被多名学生选修;一名学生有唯一的所在系,每门课程号有唯-的课程名和学分。 回答以下问题: (1)根据上述规定写出关系模式R的基本函数依赖; (2)找出关系模式R的候选码; (3)试问关系模式R最高已经达到第几范式?为什么? (4)将R分解成3NF模式集。 答: (1)学号> (姓名,所在系,性别) F 课程号> (课程名,学分) F (学号,课程号) >成绩F (学号,课程号) > (姓名,所在系,性别) P (2)候选码:学号,课程号 (3)存在部分函数依赖,R达到第一范式 (4) Student (学号,姓名,所在系,性别) sc (学号,课程号,成绩) Course (课程号,课程名,学分) 2.t-sql语句: (1)删除数据库drop database

(2)修改数据库alter database (3)使用SOL语句创建读者信息表,并设置读书编号的主键,读者姓名取值唯一。 Create table 读者信息表 (读者编号varchar(13)primary key, 读者姓名varchar(10)unique, 性别varchar(2)not null , 年龄int , 证件号码varchar (30)not null ); (4)使用SOL语句创建图书信息表、图书馆借阅表。 Create table 图书信息表 (图书编号varchar(13)primary key, 图书名称varchar(40)not null, 作者varchar(21)not null, 译者varchar(30), 出版社varchar(50)not null, 出版日期date not null, 图书价格money not null); Create table 图书借阅信息表 (图书编号varchar(13), 读书编号varchar(13),

数据库技术与应用教程各章节知识点汇总

数据库技术及应用教材(第 2 版)各章节知识点 第1 章数据库系统概述 1.1 数据库管理技术的产生和发展 1.1.1 人工管理阶段(20 世纪50 年代之前) 特点:①数据不保存 ②数据不具独立性 ③数据不共享 1.1.2 文件管理/系统阶段(20 世纪50 年代-60 年代中期)特点: ①数据可以保存 ②独立性依然差 ③冗余量大 1.1.3 数据库管理阶段20 世纪60 年代以后 1.2.1 基本概念 1. 数据Data 2. 数据库Database, DB 3. 数据库管理系统Database Management System, DBMS 功能:数据定义、数据操纵、数据控制、数据通信 4. 数据库系统Database System, DBS 包括数据库、数据库管理系统、应用系统、数据库管理员(Database Administrator, DBA)和用户 1.2.2 数据库系统的特点 1. 数据共享性好 2. 数据独立性强 3. 数据结构化

4. 统一的数据控制功能123数据库系统的组成(同上) 124数据库系统的抽象级别 DBMS中的数据被描述为逻辑模式、物理模式和外模式三级抽象1.3数据模型(概念模型、逻辑模型和物理模型) 1.3.1基本组成 1. 数据结构 2. 数据操作 3. 数据约束 1.3.2层次模型 1.3.3网状模型 1.3.4关系模型(应用最广泛) 1.3.5面向对象模型 1.3.6对象关系模型 第2章关系数据库 2.1关系数据模型的基本概念 关系数据库系统是支持关系模型的数据库系统 关系模型由数据结构、关系操作和完整性约束3部分组成 1. 数据结构(二维表) (1关系 (2元组 (3属性 (4键 ((1)超键:能唯一标识元组的属性过属性集

数据库的4个基本概念

数据库的4个基本概念 1.数据(Data):描述事物的符号记录称为数据。 2.数据库(DataBase,DB):长期存储在计算机内、有组织的、可共享的大量数据的集合。 3.数据库管理系统(DataBase Management System,DBMS 4.数据库系统(DataBase System,DBS) 数据模型 数据模型(data model)也是一种模型,是对现实世界数据特征的抽象。用来抽象、表示和处理现实世界中的数据和信息。数据模型是数据库系统的核心和基础。 数据模型的分类 第一类:概念模型 按用户的观点来对数据和信息建模,完全不涉及信息在计算机中的表示,主要用于数据库设计现实世界到机器世界的一个中间层次 实体(Entity): 客观存在并可相互区分的事物。可以是具体的人事物,也可以使抽象的概念或联系 实体集(Entity Set): 同类型实体的集合。每个实体集必须命名。 属性(Attribute): 实体所具有的特征和性质。 属性值(Attribute Value): 为实体的属性取值。 域(Domain): 属性值的取值范围。 码(Key): 唯一标识实体集中一个实体的属性或属性集。学号是学生的码 实体型(Entity Type): 表示实体信息结构,由实体名及其属性名集合表示。如:实体名(属性1,属性2,…) 联系(Relationship): 在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体型内部的联系(各属性)和实体型之间的联系(各实体集)。有一对一,一对多,多对多等。 第二类:逻辑模型和物理模型 逻辑模型是数据在计算机中的组织方式 物理模型是数据在计算机中的存储方式 数据模型的组成要素 数据模型通常由数据结构、数据操作和数据的完整性约束条件三部分组成 关系模型(数据模型的一种,最重要的一种) 从用户观点看关系模型由一组关系组成。每个关系的数据结构是一张规范化的二维表。 ?关系(Relation):一个关系对应通常说的一张表。 ?元组(Tuple):表中的一行即为一个元组。 ?属性(Attribute):表中的一列即为一个属性,给每一个属性起一个名称即属性名。 ?码(Key):表中的某个属性组,它可以唯一确定一个元组。 ?域(Domain):一组具有相同数据类型的值的集合。属性的取值范围来自某个域。

数据库原理(王珊)知识点整理

目录 1.1.1四个基本概念1 数据(Data)1 数据库(Database,简称DB)1 长期储存在计算机内、有组织的、可共享的大量数据的集合、1 基本特征1 数据库管理系统(DBMS)1 数据定义功能1 数据组织、存储和管理1 数据操纵功能1 数据库的事务管理和运行管理1 数据库的建立和维护功能(实用程序)1 其它功能1 数据库系统(DBS)2 1.1.2 数据管理技术的产生和发展2 数据管理2 数据管理技术的发展过程2 人工管理特点2 文件系统特点2 1.1.3 数据库系统的特点3 数据结构化3 整体结构化3 数据库中实现的是数据的真正结构化3 数据的共享性高,冗余度低,易扩充、数据独立性高3 数据独立性高3

物理独立性3 逻辑独立性3 数据独立性是由DBMS的二级映像功能来保证的3 数据由DBMS统一管理和控制3 1.2.1 两大类数据模型:概念模型、逻辑模型和物理模型4 1.2.2 数据模型的组成要素:数据结构、数据操作、数据的完整性约束条件4 数据的完整性约束条件:4 1.2.7 关系模型4 关系数据模型的优缺点5 1.3.1 数据库系统模式的概念5 型(Type):对某一类数据的结构和属性的说明5 值(Value):是型的一个具体赋值5 模式(Schema)5 实例(Instance)5 1.3.2 数据库系统的三级模式结构5 外模式[External Schema](也称子模式或用户模式),5 模式[Schema](也称逻辑模式)5 内模式[Internal Schema](也称存储模式)5 1.3.3 数据库的二级映像功能与数据独立性6 外模式/模式映像:保证数据的逻辑独立性6 模式/内模式映象:保证数据的物理独立性6 1.4 数据库系统的组成6 数据库管理员(DBA)职责:6 2.1.1 关系6 域(Domain):是一组具有相同数据类型的值的集合6

数据库知识点重点章节总结学习资料

1. 基本概念 (1) 数据库(DB):是一个以一定的组织形式长期存储在计算机内的,有组织的可共享的相关数据概念(2) 数据库管理系统(DBMS);是位于用户与操作系统之间的一层数据管理软件,是数据库系统的核心(3) 数据库系统(DBS);计算机系统中引入数据库后的系统构成(4) 实体;凡是现实世界中存在的可以相互区别开,并可以被我们所识别的事物.概念等对象均可认为是实体(5) 属性;是实体所具有的某些特征,通过属性对实体进行刻画.实体由属性组成(6) 码;唯一标识实体的属性集称为码(7) 域;属性的取值范围称为该属性的域 (8) 实体型;具有相同属性的实体必然具有共同的特征和性质。用实体名和属性名集合来抽象和刻画同类实体,称为实体型。(9) 实体集;同一类型实体的集合。(10) 1 :1联系:如果实体集E1中每个实体至多和实体集E2中的一个实体有联系,反之亦然,那么E1和E2的联系称为“1:1联系”。1:N联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中一个实体有联系,那么E1和E2的联系是“1:N联系”。M:N联系:如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1和E2的联系称为“M:N联系”。(11)现实世界(现实世界是指我们要管理的客户存在的各种事物.事物之间的发生.变化过程)、观念世界(信息世界)、数据世界 2.数据管理技术的发展阶段 人工管理阶段(数据不保存,系统没有专用的软件对数据进行管理,数据不共享,数据不具有独立性)、文件系统阶段(数据以文件形式可长期保存下来,文件系统可对数据的存取进行管理,文件组织多样化,程序与数据之间有一定独立性)、数据库系统阶段(数据结构化,数据共享性高,冗余少于且易扩充,数据独立性高,有统一的数据控制功能) 3. 数据库系统的特点 (1) 数据结构化 (2) 共享性高,冗余度低,易扩充 (3) 独立性高 (4) 由DBMS统一管理和控制 4. DBMS的数据控制功能 (1) 数据的安全性保护 (2) 数据的完整性检查 (3) 并发控制 (4) 数据库恢复 5. 数据模型的组成要素 数据结构数据结构是所研究的对象类型的集合,是刻画一个数据模型性质最重要的方 面,是对系统静态特性的描述。 数据操作数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集 合,包括操作及有关的操作规则。是对系统动态特性的描述。 数据的约束条件数据的约束条件是一组完整性规则的集合。完整性规则是给定的数据 模型中数据及其联系所具有的制约和依存规则,以保证数据的正确、有效、相容。 6. 最常用的数据模型 层次、网状、关系、面向对象模型 7. 关系模型 ?关系: 一张表 ?元组: 表中的一行 ?属性: 表中的一列 ?主码: 表中的某个属性组,它可以唯一确定一个元组 ?域: 属性的取值范围 ?分量: 元组中的一个属性值 ?关系模式: 对关系的描述。 表示为:关系名(属性1,属性2,…属性n)

试述数据库系统的特点

1、试述数据库系统的特点。 (1)、数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。 (2)数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向整个系统, (3)数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性。 (4)数据由DBMS 统一管理和控制数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。 2、数据库管理系统的主要功能有哪些? 答: ( l )数据库定义功能; ( 2 )数据存取功能; ( 3 )数据库运行管理; ( 4 )数据库的建立和维护功能。 3、试述数据模型的概念、数据模型的作用和数据模型的三个要素。 数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式构架。 因此数据模型通常由数据结构、数据操作和完整性约束三部分组成。 4、试述概念模型的作用。

概念模型实际上是现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。 5、试述数据库系统三级模式结构 数据库系统的三级模式结构由外模式、模式和内模式组成。 特点:(1)数据结构化。(2)数据的共享性高,冗余度低,容易扩展。(3)数据独立性高。(4)数据有DBMS统一管理。 6、试述数据库系统的组成。 数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。 7、DBA 的职责是什么? 负责全面地管理和控制数据库系统。具体职责包括:①决定数据库的信息内容和结构;②决定数据库的存储结构和存取策略;③定义数据的安全性要求和完整性约束条件;④监督和控制数据库的使用和运行;⑤改进和重组数据库系统。 8、试述关系模型的三个组成部分。 答:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成 9、试述关系数据语言的特点和分类。 答:关系数据语言可以分为三类: (1)关系代数语言。

java期末考试知识点总结

java知识点总结 应同学要求,特意写了一个知识点总结,因比较匆忙,可能归纳不是很准确,重点是面向对象的部分。 java有三个版本:JAVA SE 标准版\JAVA ME移动版\JAVA EE企业版 java常用命令:java, javac, appletview java程序文件名:.java, .class java的两类程序:applet, application; 特点,区别,这两类程序如何运行 java的主方法,主类,共有类;其特征 java的数据类型,注意与C++的不同,如字符型,引用型,初值 java与C++的不同之处,期中已总结 java标记符的命名规则 1)标识符有大小写字母、下划线、数字和$符号组成。 2)开头可以是大小写字母,下划线,和$符号(不能用数字开头) 3)标识符长度没有限制 4)标识符不能使关键字和保留字 面向对象的四大特征 抽象、封装、继承、多态 封装,类、对象,类与对象的关系,创建对象,对象实例变量 构造函数,默认构造函数,派生类的构造函数,构造函数的作用,初始化的顺序,构造方法的重载 构造函数:创建对象的同时将调用这个对象的构造函数完成对象的初始化工作。把若干个赋初值语句组合成一个方法在创建对象时一次性同时执行,这个方法就是构造函数。是与类同名的方法,创建对象的语句用new算符开辟了新建对象的内存空间之后,将调用构造函数初始化这个新建对象。 构造函数是类的特殊方法: 构造函数的方法名与类名相同。 构造函数没有返回类型。 构造函数的主要作用是完成对类对象的初始化工作。 构造函数一般不能由编程人员显式地直接调用。 在创建一个类的新对象的同时,系统会自动调用该类的构造函数为新对象初始化。 类的修饰符:public类VS 默认; abstract类; final类; 1)类的访问控制符只有一个:public,即公共的。公共类表明它可以被所有其他类访问和引用。 若一个类没有访问控制符,说明它有默认访问控制特性,规定该类智能被同一个包中的类访问引用(包访问控制)。 2)abstract类:用abstract修饰符修饰的类被称为抽象类,抽象类是没有具体对象的概念类,抽象类是它所有子类的公共属性集合,用抽象类可以充分利用这些公共属性来提高开发和维护效率。 3)final类:被final修饰符修饰限定的,说明这个类不能再有子类。所以abstract与final 不能同时修饰一个类。 域和方法的定义 1)域:定义一个类时,需要定义一组称之为“域”或“属性”的变量,保存类或对象的数据。

数据库原理知识总结和期末试卷

数据库知识要点归纳 第1章数据库基础知识 1.数据库(DB)是一个按数据结构来存储和管理数据的计算机软件系统。 数据库是长期储存在计算机内的、有组织的、可共享的数据集合。 数据库管理数据两个特征:1.数据整体性 2.数据库中的数据具有数据共享性 2.数据库管理系统(DBMS)是专门用于管理数据库的计算机系统软件 3.数据库应用系统是在数据库管理系统(DBMS)支持下建立的计算机应用系统,简写为DBAS。数据库应用系统是由数据库系统、应用程序系统、用户组成的。 例如,以数据库为基础的财务管理系统、人事管理系统、图书管理系统,成绩查询系统等等。 4.数据库系统DBS是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。它通常由软件、数据库和数据管理员组成。 5.数据库中数据独立性数据和程序之间的依赖程度低,独立程度大的特性称为数据独立性高。1、数据的物理独立性数据的物理独立性是指应用程序对数据存储结构的依赖程度。2、数据的逻辑独立性数据的逻辑独立性是指应用程序对数据全局逻辑结构的依赖程度。 6.数据库的三级模式是模式、外模式、内模式。1.模式(Schema)一个数据库只有一个模式 2.外模式(External Schema)一个数据库有多个外模式。3.内模式(Internal Schema)一个数据库只有一个内模式。 7.数据库系统的二级映象技术 第2章数据模型与概念模型 1.实体联系的类型:一对一联系(1:1)一对多联系(1:n)多对多联系(m:n) 2.E-R图描述现实世界的概念模型,提供了表示实体集、属性和联系的方法。 长方形表示实体集椭圆形表示实体集的属性菱形表示实体集间的联系 3.数据模型的三要素数据结构、数据操作、数据约束条件 数据结构分为:层状结构、网状结构和关系结构 常见的数据模型:层次模型、网状模型和关系模型。 层次模型用树形结构来表示各类实体以及实体间的联系

《数据库原理》知识点总结

《数据库原理》知识点总结标准化文件发布号:(9312-EUATWW-MWUB-WUNN-INNUL-DQQTY-

目录未找到目录项。 一数据库基础知识(第1、2章) 一、有关概念 1.数据 2.数据库(DB) 3.数据库管理系统(DBMS) Access 桌面DBMS VFP SQL Server Oracle 客户机/服务器型DBMS MySQL DB2 4.数据库系统(DBS) 数据库(DB) 数据库管理系统(DBMS) 开发工具 应用系统 二、数据管理技术的发展 1.数据管理的三个阶段 概念模型 一、模型的三个世界 1.现实世界

2.信息世界:即根据需求分析画概念模型(即E-R图),E-R图与DBMS 无关。 3.机器世界:将E-R图转换为某一种数据模型,数据模型与DBMS相关。 注意:信息世界又称概念模型,机器世界又称数据模型 二、实体及属性 1.实体:客观存在并可相互区别的事物。 2.属性: 3.关键词(码、key):能唯一标识每个实体又不含多余属性的属性组合。 一个表的码可以有多个,但主码只能有一个。 例:借书表(学号,姓名,书号,书名,作者,定价,借期,还期) 规定:学生一次可以借多本书,同一种书只能借一本,但可以多次续借。 4.实体型:即二维表的结构 例 student(no,name,sex,age,dept) 5.实体集:即整个二维表 三、实体间的联系: 1.两实体集间实体之间的联系 1:1联系 1:n联系 m:n联系 2.同一实体集内实体之间的联系 1:1联系 1:n联系 m:n联系 四、概念模型(常用E-R图表示) 属性: 联系: 说明:① E-R图作为用户与开发人员的中间语言。 ② E-R图可以等价转换为层次、网状、关系模型。 举例: 学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授 和副教授每人各带若干研究生。每个班有若干学生,每个学生选修若干课程,每门课程有若干学生选修。用E-R图画出概念模型。

高一期末知识点总结

高一期末知识点总结 第一篇:宇宙与地球 专题1 地球在宇宙中的位置 A 1、天体的概念 2、最基本的天体共同的特征 3、主要天体的特征(恒星、星云、行星、卫星、彗星、流星体) 4、天体系统的层次 5、太阳系的中心天体 6、河外星云的成员 7、宇宙年 8、太阳系八大行星按距离太阳远近的名称 9、八大行星的共同特点 10、距离地球最近的恒星 11、太阳辐射的形式 12、太阳结构(外层、内层) 13、太阳大气的主要特征 14、各层主要的太阳活动的标志 15、太阳活动的主要标志 16、太阳活动的周期 17、太阳对地球的影响

18、八大行星的分类 19、地球成为有生命存有的天体的条件 专题2 地球的伙伴——月球B 20、月球的环境特点 21、月球的地形特点 22、月球公转周期、自转周期、方向 23、地球的天然卫星 24、熟悉月相的名称、各月相的出现的农历时间 25、月相循环一个周期的时间、名称 26、日食、月食出现的原因 27、日食、月食时,月球、地球、太阳的三者位置 28、日食、月食出现时的月相情况 29、潮、汐的概念 30、潮、汐出现的原因(不必展开阐述) 31、理解潮汐随月球而不是太阳的出没而出现潮起潮落的现象的原因 32、连续两次涨潮的时间间隔 33、大潮、小潮出现的月相农历时间 34、潮汐与人类的关系 专题3 人类对太空的探索A 35、太空探索的意义、太空探索的历程 专题4 地球的运动C

36、地球自转的方向、周期、一个周期所需的时间、速度 37、地轴北端的指向 38、恒星日与太阳日的区别(时间、参照物、成因) 39、南、北两极上空所观察到的地球自转的方向 40、什么是地方时、区时、北京时间 41、时区划分的方法 42、国际日期变更线两侧日期的变化 43、地球表面作水平运动的物体发生偏向的的规律(南、北半球、赤道的区别) 44、地球公转的方向、周期、速度 45、黄赤交角的度数 46、太阳直射点在赤道、北回归线、南回归线上的日期、节气 47、正午太阳高度角在纬度和季节上变化的规律 48、晨昏线的区分 49、昼夜长短在纬度和季节上变化的规律极昼、极夜现象 50、天文角度、传统上、气候上四季的划分 第二篇岩石与地貌 专题5 板块运动B 1、用于解释地壳运动的三大学说的名称 2、六大板块的名称 3、板块构造学说的主要观点

数据库原理(王珊)知识点整理

目录 1.1.1四个基本概念 (1) 数据(Data) (1) 数据库(Database,简称DB) (1) 长期储存在计算机内、有组织的、可共享的大量数据的集合、 (1) 基本特征 (1) 数据库管理系统(DBMS) (1) 数据定义功能 (1) 数据组织、存储和管理 (1) 数据操纵功能 (1) 数据库的事务管理和运行管理 (1) 数据库的建立和维护功能(实用程序) (1) 其它功能 (1) 数据库系统(DBS) (1) 1.1.2 数据管理技术的产生和发展 (1) 数据管理 (1) 数据管理技术的发展过程 (1) 人工管理特点 (1) 文件系统特点 (1) 1.1.3 数据库系统的特点 (2) 数据结构化 (2) 整体结构化 (2) 数据库中实现的是数据的真正结构化 (2) 数据的共享性高,冗余度低,易扩充、数据独立性高 (2) 数据独立性高 (2) 物理独立性 (2) 逻辑独立性 (2) 数据独立性是由DBMS的二级映像功能来保证的 (2) 数据由DBMS统一管理和控制 (2) 1.2.1 两大类数据模型:概念模型、逻辑模型和物理模型 (2) 1.2.2 数据模型的组成要素:数据结构、数据操作、数据的完整性约束条件 (3) 数据的完整性约束条件: (3) 1.2.7 关系模型 (3) 关系数据模型的优缺点 (3) 1.3.1 数据库系统模式的概念 (3) 型(Type):对某一类数据的结构和属性的说明 (3) 值(Value):是型的一个具体赋值 (3) 模式(Schema) (3) 实例(Instance) (3) 1.3.2 数据库系统的三级模式结构 (3) 外模式[External Schema](也称子模式或用户模式), (3) 模式[Schema](也称逻辑模式) (3) 内模式[Internal Schema](也称存储模式) (3) 1.3.3 数据库的二级映像功能与数据独立性 (3)

数据库知识点整理(全)

UNIT 1 四个基本概念 1.数据(Data):数据库中存储的基本对象 2.数据库的定义 :数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合 3.数据库管理系统(简称DBMS):位于用户与操作系统之间的一层数据管理软件(系统软件)。 用途:科学地组织和存储数据;高效地获取和维护数据 主要功能: 数据定义功能; 数据操纵功能; 数据库的运行管理; 数据库的建立和维护功能(实用程序) 4.数据库系统(Database System,简称DBS):指在计算机系统中引入数据库后的系统 数据库系统的构成 数据库 数据库管理系统(及其开发工具) 应用系统 数据库管理员(DBA)和用户 数据管理技术的发展过程 人工管理阶段 文件系统阶段 数据库系统阶段 数据库系统管理数据的特点如下 (1) 数据共享性高、冗余少;(2) 数据结构化;(3) 数据独立性高;(4) 由DBMS进行统一的数据控制功能 数据模型 用来抽象、表示和处理现实世界中的数据和信息的工具。通俗地讲数据模型就是现实世界数据的模拟。 数据模型三要素。

数据结构:是所研究的对象类型的集合,它是刻画一个数据模型性质最重要的方面;数据结构是对系统静态特性的描述 数据操作:对数据库中数据允许执行的操作及有关的操作规则;对数据库中数据的操作主要有查询和更改(包括插入、修改、删除);数据操作是对系统动态特性的描述 数据的约束条件:数据及其联系应该满足的条件限制 E-R图 实体:矩形框表示 属性:椭圆形(或圆角矩形)表示 联系:菱形表示 组织层数据模型 层次模型 网状模型 关系模型(用“二维表”来表示数据之间的联系) 基本概念: 关系(Relation) :一个关系对应通常说的一张表 元组(记录): 表中的一行 属性(字段):表中的一列,给每一个属性名称即属性名 分量:元组中的一个属性值,分量为最小单位,不可分 主码(Key):表中的某个属性组,它可以唯一确定一个元组。 域(Domain):属性的取值范围。

数据库系统的基本概念

1.4 数据库设计基础 考点17 数据库系统的基本概念 1、数据、数据库、数据库管理系统和数据库系统 (1)数据 数据(Data)是描述事物的符号记录。 数据:在计算机系统中,各种字母、数字符号的组合、语音、图形、图像等统称为数据,数据经过加工后就成为信息。 在计算机科学中,数据是指所有能输入到计算机并被计算机程序处理的符号的介质的总称,是用于输入电子计算机进行处理,具有一定意义的数字、字母、符号和模拟量等的通称。 (2)数据库 数据库(Database, DB)是指长期存储在计算机内的、有组织的、可共享的数据集合。 数据库是一个单位或是一个应用领域的通用数据处理系统,他存储的是属于企业和事业部门、团体和个人的有关数据的集合。数据库中的数据是从全局观点出发建立的,他按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不再针对某一应用,而是面向全组织,具有整体的结构化特征。 数据库中的数据是为众多用户所共享其信息而建立的,已经摆脱了具体程序的限制和制约。不同的用户可以按各自的用法使用数据

库中的数据;多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时存取数据库中的同一个数据。数据共享性不仅满足了各用户对信息内容的要求,同时也满足了各用户之间信息通信的要求。 (3)数据库管理系统 数据库管理系统(Database Management System, DBMS)是数据库的机构,它是一个系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。 数据库管理系统的主要类型有4种:文件管理系统,层次数据库系统,网状数据库系统和关系数据库系统,其中关系数据库系统的应用最为广泛。 数据库管理系统是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过它访问数据库中的数据,数据库管理员也通过它进行数据库的维护工作。它可使多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。DBMS 提供数据定义语言DDL(Data Definition Language)与数据操作语言DML(Data Manipulation Language),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。 (4)数据库系统 数据库系统(Database System, DBS)是指引进数据库技术后的整个计算机系统,能够实现有组织地、动态地存储大量相关数据,

大学数据结构期末知识点重点总结

第一章概论 1.数据结构描述的是按照一定逻辑关系组织起来的待处理数据元素的表示及相关操作,涉及数据的逻辑结构、存储结构和运算 2.数据的逻辑结构是从具体问题抽象出来的数学模型,反映了事物的组成结构及事物之间的逻辑关系 可以用一组数据(结点集合K)以及这些数据之间的一组二元关系(关系集合R)来表示:(K, R) 结点集K是由有限个结点组成的集合,每一个结点代表一个数据或一组有明确结构的数据 关系集R是定义在集合K上的一组关系,其中每个关系r(r∈R)都是K×K上的二元关系 3.数据类型 a.基本数据类型 整数类型(integer)、实数类型(real)、布尔类型(boolean)、字符类型(char)、指针类型(pointer)b.复合数据类型 复合类型是由基本数据类型组合而成的数据类型;复合数据类型本身,又可参与定义结构更为复杂的结点类型 4.数据结构的分类:线性结构(一对一)、树型结构(一对多)、图结构(多对多) 5.四种基本存储映射方法:顺序、链接、索引、散列 6.算法的特性:通用性、有效性、确定性、有穷性 7.算法分析:目的是从解决同一个问题的不同算法中选择比较适合的一种,或者对原始算法进行改造、加工、使其优化 8.渐进算法分析 a.大Ο分析法:上限,表明最坏情况 b.Ω分析法:下限,表明最好情况 c.Θ分析法:当上限和下限相同时,表明平均情况 第二章线性表 1.线性结构的基本特征 a.集合中必存在唯一的一个“第一元素” b.集合中必存在唯一的一个“最后元素” c.除最后元素之外,均有唯一的后继 d.除第一元素之外,均有唯一的前驱 2.线性结构的基本特点:均匀性、有序性 3.顺序表 a.主要特性:元素的类型相同;元素顺序地存储在连续存储空间中,每一个元素唯一的索引值;使用常数作为向量长度 b. 线性表中任意元素的存储位置:Loc(ki) = Loc(k0) + i * L(设每个元素需占用L个存储单元) c. 线性表的优缺点: 优点:逻辑结构与存储结构一致;属于随机存取方式,即查找每个元素所花时间基本一样 缺点:空间难以扩充 d.检索:ASL=【Ο(1)】 e.插入:插入前检查是否满了,插入时插入处后的表需要复制【Ο(n)】 f.删除:删除前检查是否是空的,删除时直接覆盖就行了【Ο(n)】 4.链表 4.1单链表 a.特点:逻辑顺序与物理顺序有可能不一致;属于顺序存取的存储结构,即存取每个数据元素所花费的时间不相等 b.带头结点的怎么判定空表:head和tail指向单链表的头结点 c.链表的插入(q->next=p->next; p->next=q;)【Ο(n)】 d.链表的删除(q=p->next; p->next = q->next; delete q;)【Ο(n)】 e.不足:next仅指向后继,不能有效找到前驱 4.2双链表 a.增加前驱指针,弥补单链表的不足 b.带头结点的怎么判定空表:head和tail指向单链表的头结点 c.插入:(q->next = p->next; q->prev = p; p->next = q; q->next->prev = q;) d.删除:(p->prev->next = p->next; p->next->prev = p->prev; p->prev = p->next = NULL; delete p;) 4.3顺序表和链表的比较 4.3.1主要优点 a.顺序表的主要优点 没用使用指针,不用花费附加开销;线性表元素的读访问非常简洁便利 b.链表的主要优点 无需事先了解线性表的长度;允许线性表的长度有很大变化;能够适应经常插入删除内部元素的情况 4.3.2应用场合的选择 a.不宜使用顺序表的场合 经常插入删除时,不宜使用顺序表;线性表的最大长度也是一个重要因素 b.不宜使用链表的场合 当不经常插入删除时,不应选择链表;当指针的存储开销与整个结点内容所占空间相比其比例较大时,应该慎重选择 第三章栈与队列 1.栈 a.栈是一种限定仅在一端进行插入和删除操作的线性表;其特点后进先出;插入:入栈(压栈);删除:出栈(退栈);插入、删除一端被称为栈顶(浮动),另一端称为栈底(固定);实现分为顺序栈和链式栈两种 b.应用: 1)数制转换 while (N) { N%8入栈; N=N/8;} while (栈非空){ 出栈; 输出;} 2)括号匹配检验 不匹配情况:各类括号数量不同;嵌套关系不正确 算法: 逐一处理表达式中的每个字符ch: ch=非括号:不做任何处理 ch=左括号:入栈 ch=右括号:if (栈空) return false else { 出栈,检查匹配情况, if (不匹配) return false } 如果结束后,栈非空,返回false 3)表达式求值 3.1中缀表达式: 计算规则:先括号内,再括号外;同层按照优先级,即先乘*、除/,后加+、减-;相同优先级依据结合律,左结合律即为先左后右 3.2后缀表达式: <表达式> ::= <项><项> + | <项><项>-|<项> <项> ::= <因子><因子> * |<因子><因子>/|<因子> <因子> ::= <常数> ?<常数> ::= <数字>|<数字><常数> <数字> ∷= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 3.3中缀表达式转换为后缀表达式 InfixExp为中缀表达式,PostfixExp为后缀表 达式 初始化操作数栈OP,运算符栈OPND; OPND.push('#'); 读取InfixExp表达式的一项 操作数:直接输出到PostfixExp中; 操作符: 当‘(’:入OPND; 当‘)’:OPND此时若空,则出错;OPND若 非空,栈中元素依次弹出,输入PostfixExpz 中,直到遇到‘(’为止;若为‘(’,弹出即 可 当‘四则运算符’:循环(当栈非空且栈顶不是 ‘(’&& 当前运算符优先级>栈顶运算符优先 级),反复弹出栈顶运算符并输入到 PostfixExp中,再将当前运算符压入栈 3.4后缀表达式求值 初始化操作数栈OP; while (表达式没有处理完) { item = 读取表达式一项; 操作数:入栈OP; 运算符:退出两个操作数, 计算,并将结果入栈} c.递归使用的场合:定义是递归的;数据结构是 递归的;解决问题的方法是递归的 2.队列 a.若线性表的插入操作在一端进行,删除操作 在另一端进行,则称此线性表为队列 b.循环队列判断队满对空: 队空:front==rear;队满: (rear+1)%n==front 第五章二叉树 1.概念 a. 一个结点的子树的个数称为度数 b.二叉树的高度定义为二叉树中层数最大的叶 结点的层数加1 c.二叉树的深度定义为二叉树中层数最大的叶 结点的层数 d.如果一棵二叉树的任何结点,或者是树叶, 或者恰有两棵非空子树,则此二叉树称作满二 叉树 e.如果一颗二叉树最多只有最下面的两层结点 度数可以小于2;最下面一层的结点都集中在 该层最左边的位置上,则称此二叉树为完全二 叉树 f.当二叉树里出现空的子树时,就增加新的、特 殊的结点——空树叶组成扩充二叉树,扩充二 叉树是满二叉树 外部路径长度E:从扩充的二叉树的根到每个 外部结点(新增的空树叶)的路径长度之和 内部路径长度I:扩充的二叉树中从根到每个内 部结点(原来二叉树结点)的路径长度之和 2.性质 a. 二叉树的第i层(根为第0层,i≥0)最多有 2^i个结点 b. 深度为k的二叉树至多有2k+1-1个结点 c. 任何一颗二叉树,度为0的结点比度为2的 结点多一个。n0 = n2 + 1 d. 满二叉树定理:非空满二叉树树叶数等于其 分支结点数加1 e. 满二叉树定理推论:一个非空二叉树的空子 树(指针)数目等于其结点数加1 f. 有n个结点(n>0)的完全二叉树的高度为 ?log2(n+1)?,深度为?log2(n+1)?? g. 对于具有n个结点的完全二叉树,结点按层 次由左到右编号,则有: 1) 如果i = 0为根结点;如果i>0,其父结点 编号是(i-1)/2 2) 当2i+1∈N,则称k是k'的父结点,k'是 的子结点 若有序对∈N,则称k' k″互为兄弟 若有一条由k到达ks的路径,则称k是 的祖先,ks是k的子孙 2.树/森林与二叉树的相互转换 a.树转换成二叉树 加线: 在树中所有兄弟结点之间加一连线 抹线: 对每个结点,除了其最左孩子外, 与其余孩子之间的连线 旋转: 45° b.二叉树转化成树 加线:若p结点是双亲结点的左孩子,则将 的右孩子,右孩子的右孩子, 所有右孩子,都与p的双亲用线连起来 线 调整:将结点按层次排列,形成树结构 c.森林转换成二叉树 将各棵树分别转换成二叉树 将每棵树的根结点用线相连 为轴心,顺时针旋转,构成二叉树型结构 d.二叉树转换成森林 抹线:将二叉树中根结点与其右孩子连线,及 沿右分支搜索到的所有右孩子间连线全部抹 掉,使之变成孤立的二叉树 还原:将孤立的二叉树还原成树 3.周游 a.先根(次序)周游 若树不空,则先访问根结点,然后依次先根周 游各棵子树 b.后根(次序)周游 若树不空,则先依次后根周游各棵子树,然后 访问根结点 c.按层次周游 若树不空,则自上而下自左至右访问树中每个 结点 4.存储结构 “左子/右兄”二叉链表表示法:结点左指针指 向孩子,右结点指向右兄弟,按树结构存储, 无孩子或无右兄弟则置空 5. “UNION/FIND算法”(等价类) 判断两个结点是否在同一个集合中,查找一个 给定结点的根结点的过程称为FIND 归并两个集合,这个归并过程常常被称为 UNION “UNION/FIND”算法用一棵树代表一个集合, 如果两个结点在同一棵树中,则认为它们在同 一个集合中;树中的每个结点(除根结点以外) 有仅且有一个父结点;结点中仅需保存父指针 信息,树本身可以存储为一个以其结点为元素 的数组 6.树的顺序存储结构 a. 带右链的先根次序表示法 在带右链的先根次序表示中,结点按先根次序 顺序存储在一片连续的存储单元中 每个结点除包括结点本身数据外,还附加两个 表示结构的信息字段,结点的形式为: info是结点的数据;rlink是右指针,指向结点 的下一个兄弟;ltag是一个左标记,当结点没 有子结点(即对应二叉树中结点没有左子结点 时),ltag为1,否则为0 b. 带双标记位的先根次序表示法 规定当结点没有下一个兄弟(即对应的二叉树 中结点没有右子结点时)rtag为1,否则为0 c. 带双标记位的层次次序表示法 结点按层次次序顺序存储在一片连续的存储单 元中 第七章图 1.定义 a.假设图中有n个顶点,e条边: 含有e=n(n-1)/2条边的无向图称作完全图 含有e=n(n-1) 条弧的有向图称作有向完全图 若边或弧的个数e < nlogn,则称作稀疏图, 否则称作稠密图 b. 顶点的度(TD)=出度(OD)+入度(ID) 顶点的出度: 以顶点v为弧尾的弧的数目 顶点的入度: 以顶点v为弧头的弧的数目 c.连通图、连通分量 若图G中任意两个顶点之间都有路径相通,则 称此图为连通图 若无向图为非连通图,则图中各个极大连通子 图称作此图的连通分量 d.强连通图、强连通分量 对于有向图,若任意两个顶点之间都存在一条 有向路径,则称此有向图为强连通图 否则,其各个极大强连通子图称作它的强连通 分量 e.生成树、生成森林 假设一个连通图有n个顶点和e条边,其中n-1 条边和n个顶点构成一个极小连通子图,称该 极小连通子图为此连通图的生成树 对非连通图,则将由各个连通分量构成的生成 树集合称做此非连通图的生成森林 2.存储结构 a.相邻矩阵表示法 表示顶点间相邻关系的矩阵 若G是一个具有n个顶点的图,则G的相邻矩 阵是如下定义的n×n矩阵: A[i,j]=1,若(Vi, Vj)(或)是图G的边 A[i,j]=0,若(Vi, Vj)(或)不是图G的边 b.邻接表表示法 为图中每个顶点建立一个单链表,第i个单链表 中的结点表示依附于顶点Vi的边(有向图中指 以Vi为尾的弧)(建立单链表时按结点顺序建 立) 3.周游 a. 深度优先周游: 从图中某个顶点V0出发,访问此顶点,然后依 次从V0的各个未被访问的邻接点出发,深度优 先搜索遍历图中的其余顶点,直至图中所有与 V0有路径相通的顶点都被访问到为止 b. 广度优先周游: 从图中的某个顶点V0出发,并在访问此顶点之 后依次访问V0的所有未被访问过的邻接点,随 后按这些顶点被访问的先后次序依次访问它们 的邻接点,直至图中所有与V0有路径相通的顶 点都被访问到为止,若此时图中尚有顶点未被 访问,则另选图中一个未曾被访问的顶点作起 始点,重复上述过程,直至图中所有顶点都被 访问到为止 4.拓扑排序 拓扑排序的方法是:1)选择一个入度为0的顶 点且输出之 2)从图中删掉此顶点及所有的出边 3)回到第1步继续执行,直至图空或者图不空 但找不到无前驱(入度为0)的顶点为止 5.单源最短路径(Dijkstra算法) 6.每对顶点间的最短路径(Floyd算法) 7.最小生成树 a.Prim算法 b.Kruskal算法 c.两种算法比较:Prim算法适合稠密图, Kruskal算法适合稀疏图 第八章内排序 算法最大时间平均时间 直接插入排 序 Θ(n2) Θ(n2) 冒泡排序Θ(n2) Θ(n2) 直接选择排 序 Θ(n2) Θ(n2) Shell排序Θ(n3/2) Θ(n3/2) 快速排序Θ(n2) Θ(nlog n) 归并排序Θ(nlog n) Θ(nlog n) 堆排序Θ(nlog n) Θ(nlog n) 桶式排序Θ(n+m) Θ(n+m) 基数排序Θ(d·(n+r)) Θ(d·(n+r)) 最小时间S(n) 稳定性 Θ(n) Θ(1) 稳定 Θ(n) Θ(1) 稳定 Θ(n2) Θ(1) 不稳定 Θ(n3/2) Θ(1) 不稳定 Θ(nlog n) Θ(log n) 不稳定 Θ(nlog n) Θ(n) 稳定 Θ(nlog n) Θ(1) 不稳定 Θ(n+m) Θ(n+m) 稳定 Θ(d·(n+r)) Θ(n+r) 稳定 第十章检索 1.平均检索长度(ASL)是待检索记录集合中元 素规模n的函数,其定义为: ASL= Pi为检索第i个元素的概率;Ci为找到第i个元 素所需的比较次数 2.散列 a.除余法 用关键码key除以M(取散列表长度),并取余 数作为散列地址 散列函数为:hash(key) =key mod M b.解决冲突的方法 开散列方法:把发生冲突的关键码存储在散列 表主表之外(在主表外拉出单链表) 闭散列方法:把发生冲突的关键码存储在表中 另一个位置上 c.线性探查 基本思想:如果记录的基位置存储位置被占用, 就在表中下移,直到找到一个空存储位置;依 次探查下述地址单元:d0+1,d0+2,...,m-1, 0,1,...,d0-1;用于简单线性探查的探查 函数是:p(K, i) = i d.散列表的检索 1.假设给定的值为K,根据所设定的散列函数h, 计算出散列地址h(K) 2. 如果表中该地址对应的空间未被占用,则检 索失败,否则将该地址中的值与K比较 3. 若相等则检索成功;否则,按建表时设定的 处理冲突方法查找探查序列的下一个地址,如 此反复下去,直到某个地址空间未被占用(可 以插入),或者关键码比较相等(有重复记录, 不需插入)为止 e.散列表的删除:删除后在删除地点应加上墓 碑(被删除标记) f.散列表的插入:遇到墓碑不停止,知道找到真 正的空位置 第十一章索引技术 1.概念: a.主码:数据库中的每条记录的唯一标识 b.辅码:数据库中可以出现重复值的码 2.B树 a.定义:B树定义:一个m阶B树满足下列条 件: (1) 每个结点至多有m个子结点; (2) 除根和叶外 其它每个结点至少有??个子结点; (3) 根结点至少有两个子结点 例外(空树,or独根) (4) 所有的叶在同一层,可以有??- 1到m-1个 关键码 (5) 有k个子结点的非根结点恰好包含k-1个关 键码 b.查找 在根结点所包含的关键码K1,…,Kj中查找给 定的关键码值(用顺序检索(key少)/二分检索 (key多));找到:则检索成功;否则,确定要查 的关键码值是在某个Ki和Ki+1之间,于是取 pi所指结点继续查找;如果pi指向外部结点, 表示检索失败. c.插入 找到的叶是插入位置,若插入后该叶中关键码 个数

相关文档
最新文档