数据库概述ppt课件.ppt
《数据库概述ppt课件.ppt》由会员分享,可在线阅读,更多相关《数据库概述ppt课件.ppt(96页珍藏版)》请在三一办公上搜索。
1、3.1 数据库概述,第3章 数据库与表的创建及使用,3.2 数据库的创建、打开与使用,3.3 表的创建与使用,3.4 永久关系与参照完整性,3.5 有关数据库及其对象的常用函数,掌握数据库的创建、使用以及与库表的关系,掌握表结构的创建与修改、表的打开与关闭以及工作区的概念和使用,掌握表记录的追加、浏览、定位、修改、删除和筛选操作及相关的命令,掌握索引的概念、类型以及结构复合索引文件的创建、修改和使用方法,掌握永久关系的概念、作用、创建方法以及设置相关表之间的参照完整性,掌握有关数据库及其对象的常用函数,教学目的与要求,3.1 数据库概述,数据库是一个包容器,是许多相关的数据库表及其关系的集合。
2、包括数据表以及表之间的关系。,例如:一个教学数据库管理系统涉及到学生、课程、教师、学生成绩等实体。可以用表格表示,有学生表、教师表、课程表、学生成绩表等。还有学生和课程、学生和成绩以及教师和课程等之间的关系。,3.1.1 数据库的设计过程,确定建立数据库的目的 确定需要的表 确定所需字段 确定表之间的关系 改进优化设计,3.1.2 数据库的组成,数据库与数据库表之间的双向链接。,1、数据库表,注:移动了数据文件或与数据库关联的表文件,可能破坏双向链,可以重新链接或者删除剩余链。,3.1.2 数据库的组成,把分散在相关表中的数据通过联结条件把它们收集到一起,构成一张“虚表”,这张“虚表”就是视图
3、。视图使数据暂时从数据库中分离出来,成为游离数据,以便在主系统之外收集和修改数据。,3、连接保存在数据库中的一个定义,指定了数据源的名称。这里的数据源指的是远程数据源。两种方法连接远程数据源:一种是直接访问在机器上注册的ODBC数据源,另一种是用“连接设计器”设计自定义连接。,2、视图,3.1.2 数据库的组成,在数据库中保存过程和代码的地方。包含用户自定义函数中的任何命令和函数,还有永久关系中参照完整性代码。对数据库中的数据进行地相似或相同的处理,可以编写成自定义函数或过程保存在存储过程中,以供其他时候调用。,创建、修改或移去存储过程有以下几种:(1)在“项目管理器”中,选择并展开一个数据库
4、,选定“存储过程”,然后选择“新建”、“修改”或“移去”按钮。(2)在“数据库设计器”中,从“数据库”菜单中选择“编辑存储过程”按钮。(3)在“命令”窗口中,使用MODIFY PROCEDURE命令。,FUNCTION cj_rule PARAMETERS cj IF cj=0 and cj=100 RETURN.T.ELSE RETURN.F.ENDIFENDFUNC在cj字段的验证规则中设置如下:cj_rule(cj.cj),4、存储过程,3.1.3 数据字典,数据字典是指存储在数据库中的用于描述所管理的表和对象的数据,即关于数据的数据,这些数据称为元数据。可用display|list d
5、atabase命令查看数据库中的信息。,数据字典可以创建和指定以下内容:主关键字和候选索引关键字;表单中使用的默认控件类;数据库表之间的永久关系;字段的输入掩码和显示格式;长表名和表中的长字段名;字段级和记录级有效性规则;表中字段的标题和注释;存储过程;表中字段的默认值;插入、更新和删除事件的触发器。,3.2 数据库的创建、打开与使用,每创建一个新的数据库都将生成三个文件:数据库文件(.DBC)关联的数据库备注文件(.DCT)关联的数据库索引文件(.DCX)注:数据库是一个包容器,但并不在物理上包容任何附属对象,在数据库中仅存储了指向表文件的路径指针。,3.2.1 数据库的创建,1、界面方式,
6、2、命令方式 CREATE DATABASE 数据库名|?注:如果命令中没有数据库名或只给出了?则命令自动打开“新建对话框”。如果给出了数据库名,则创建数据库,并使该数据库处于打开状态,但不出现数据库设计器。,3.2.2 数据库的打开与关闭,1、打开数据库使用打开数据库的命令OPEN DATABASE 数据库名 EXCLUSIVE|SHAREDNOUPDATEVALIDATE多次使用该命令可以打开多个数据库。,所有打开的数据库中只有一个是当前数据库。设置当前数据库的方法:界面中直接使用“常用”工具条 使用命令设置:SET DATABASE TO 数据库名,注:利用DBC()函数返回当前打开的数
7、据库的完整文件名。函数DBUSED(数据库名)返回指定的数据库文件是否处于打开状态。,2、检查数据库的有效性,链接被破坏后可以重新链接,具体方法为在VALIDATE DATABASE 命令中使用RECOVER子句。如:OPEN DATABASE testdata VALIDATE DATABASE RECOVER 如果是从磁盘意外的删除了某个库文件,而表文件中仍保留对该数据库的后链,这个表就不能被添加到其他数据库中,这时需要从表中删除后链:FREE TABLE 表文件名,用户移动了数据库文件或者表文件,则这些文件的相对路径发生改变,则可能会破坏库和库表之间的双向链接。,3.2.2 数据库的打开
8、与关闭,3、关闭数据库,(1)使用“项目管理器”(2)使用CLOSE DATEBASES命令 CLOSE DATABASES关闭当前数据库和表。若无当前数据库,则关闭所有工作区内所有打开的自由表、索引文件和格式文件,并选择工作区1。CLOSE DATABASES ALL关闭所有打开的数据库和其中的表、所有打开的自由表、所有工作区内所有索引和格式文件。CLOSE ALL关闭所有的数据库、表、索引以及各种设计器。,4、删除数据库,利用项目管理器进行。,3.2.2 数据库的打开与关闭,3.3 表的创建与使用,表的分类:数据库表属于某个数据库(简称库表)自由表与数据库无关,注意:一张表在同一时刻只能属
9、于一个数据库,不能将一个数据库的表添加到另一个数据库中。,扩展名都是.dbf,保存一个表的同时将生成一个表的备份文件.fpt,3.3.1 表结构概述,表:指存放在磁盘文件中的一张二维表。一张表保存为一个表文件(.dbf),表的记录必须用一个公共的结构来存储,这个公共结构就是表的结构。,每张表最多有255个字段,3.3.2 利用表设计器或命令创建和修改表结构,界面方式创建表的结构:,界面方式修改表的结构:,命令方式修改表的结构:,1、添加字段 将bjmc(班级名称)字段添加到xs表中 ALTER TABLE xs ADD COLUMN bjmc C(12),2、重命名字段 将bjmc改为bj A
10、LTER TABLE xs RENAME COLUMN bjmc TO bj,3、删除字段 将bj字段删除 ALTER TABLE xs DROP COLUMN bj,3.3.2 利用表设计器或命令创建和修改表结构,3.3.3 字段属性和表属性,1、字段的扩展属性,字段显示时的格式,显示的大小写和样式等,字段输入数据的格式,使字段具有更好的可读性,用于控制输入到字段中的数据的取值范围,用包含该字段的逻辑表达式来验证,如果当前输入值使逻辑表达式的值为假,则拒绝输入该值。如:(xb=男 or xb=女),添加新记录时,为字段指定的初始值,该值与字段指定的类型必须一致。如:性别字段的默认值可指定为男
11、,对有效性规则的说明,例:给jxsj数据库中的cj表的cj字段进行如下设置:1、cj字段在输入时只允许是三位的数字2、设置标题为“成绩”3、输入的成绩值必须在0-100分之间4、设置默认值为60分5、设置注释为:“学生各门课程的成绩”设置如下:,2、数据库表的表属性,3.3.3 字段属性和表属性,库表的字段级和记录级以及表的触发器,为数据的输入和更改实施了约束。,库表的约束机制及其激活时机,3.3.3 字段属性和表属性,3.3.4 表的打开与关闭,工作区的几个概念用以标识一张打开的表的区域。每个工作区都有一个编号,从132767(前10个可以用字母AJ表示);每个工作区只能打开一张表,但一张表
12、可以在多个工作区打开,用AGAIN子句;在工作区打开的表都有一个别名,也可使用表的别名作为工作区号。系统正使用的工作区为当前工作区,启动VFP后默认当前工作区为1。可以用SELECT命令选择当前工作区。如:SELECT 4&选择4号工作区 SELECT 0&选择当前未使用的工作区区号最小的工作区。,1、工作区,2、数据工作期窗口,3.3.4 表的打开与关闭,当前工作区区号,3、表的打开,界面操作使用命令,USE TableName IN nWorkArea|cTableAlias1 AGAINALIAS cTablesAlias2NOUPDATE,3.3.4 表的打开与关闭,USE xs&在当
13、前工作区打开xs表,xsUSE js Alias jiaoshi IN 4&在工作区4中打开js表 USE zg IN 0&在最小未用工作区中打开zg表 USE xs AGAIN IN 5&在工作区5中再次打开xs表,EUSE xs AGAIN IN 15&在工作区15中再次打开xs表,W15,4、表的关闭,1、界面操作,3.3.4 表的打开与关闭,(1)使用菜单命令文件/打开或单击常用工具条上的打开按钮,此时打开的表是在当前工作区中打开。,(2)在数据工作期窗口中单击打开按钮,此时打开的表在当前未被使用的最小工作区中打开,且当前工作不变。,(3)在项目管理器窗口中选择需要打开的表,然后单击修
14、改或浏览按钮,此时表在当前未被使用的最小工作区中打开,且该工作区为当前工作区。,2、使用命令 USE 关闭当前工作区中的表 USE IN 别名|工作区 关闭非当前工作区中的表 CLOSE ALL 或CLOSE DATABASE 或 CLOSE TABLES 关闭所有工作区中的表3、在退出VFP时,所有的表被关闭,5、表的独占和共享使用,(1)“工具”“选项”,3.3.4 表的打开与关闭,独占,(2)使用SET EXCLUSIVE 命令,SET EXCLUSIVE OFF设置“共享”为默认打开方式SET EXCLUSIVE ON设置“独占”为默认打开方式,(3)强行用一种方式打开,在用命令打开表
15、时,加子句“SHARED”(共享)或“EXCLUSIVE”(独占)来指定打开方式。,USE xs SHARED共享方式打开xs表USE js EXCLUSIVE独占方式打开js表,3.3.4 表的打开与关闭,3.3.5 记录的处理,记录的输入,记录的定位,记录的浏览,记录的修改,记录的删除,筛选记录或字段,记录处理,数据的复制,3.3.6 索引的创建和使用,记录的顺序物理顺序表中记录的存储顺序。逻辑顺序表被打开使用时,记录的处理 顺序。,注:物理顺序和逻辑顺序可以相同也可以不 同,但实际应用中往往不同。,1、索引的概述,索引是由一系列记录号组成的一个列表。记录号在列表中的顺序是按照各个记录的索
16、引关键字的值,从小到大或从大到小进行排列的。,(1)索引关键字 通常是一个字段或字段表达式,有时也称索引表达式,它是建立索引的依据。,3.3.6 索引的创建和使用,用多个字段建立索引表达式,应注意:,1)字符型表达式的计算结果影响索引的结果 如:“xs.ximing+xs.xb”和“xs.xb+xs.ximing”2)用多个“数值型”字段求和建立的索引表达式,索引将按字段和,而不是字段本身。3)不同类型字段构成一个表达式时,必须转换数据类型。,(2)索引标识(Tag),即索引关键字的名称,也称索引名。,3.3.6 索引的创建和使用,2、索引文件的种类,索引本身不改变表中数据的物理顺序,只是把索
17、引保存到另一个文件中,这个文件就是索引文件。,1、结构复合索引文件 与对应的表文件的主文件名相同,在创建时系统自动给定。与表文件同时打开、更新和关闭。2、非结构复合索引文件 文件名由用户给出。打开表时,对应的非复合结构索引文件不自动打开,需用命令。3、独立索引文件 只存储一个索引的索引文件,一般作为临时索引文件。好处是查找速度快。也不会随表的打开而打开。,3.3.6 索引的创建和使用,3、创建结构复合索引文件,1、用“表设计器”创建2、用命令创建,语法:INDEX ON 索引表达式 TAG 索引标识名 FOR 条件表达式ASCENDING|DESCEDING UNIQUE|CANDIDATE,
18、ON 索引表达式创建一个关键字段表达式。TAG 索引标识名指定索引的标识名。FOR 条件表达式指定参加索引的表中记录的条件 表达式,默认为表中所有记录参加。ASCENDING|DESCEDING升序或降序。UNIQUE唯一索引。CANDIDATE创建候选索引标识。,3.3.6 索引的创建和使用,(1)主索引在数据表中每张表只能创建一个主索引。组成主索引的关键字的字段或表达式在表的所有记录中不能 有重复值。(2)候选索引指定的关键字段或表达式中不允许有重复值。一张表中可以建立多个候选索引。(3)普通索引允许关键字段或表达式中的值出现重复。一张表中可以建立多个普通索引。在普通索引上查找的记录不具唯
19、一性。(4)唯一索引允许关键字段或表达式中的值出现重复,但仅存储其中的第 一个。,索引的类型:,3.3.6 索引的创建和使用,创建结构复合索引需注意的问题(1)不能对备注型字段和通用型字段建立索引。(2)不要建立无用的索引,多于的索引将降低系统性能。,3.3.6 索引的创建和使用,4、索引的使用,(1)设置主控索引主控索引在某一时刻只有一个索引对表起作用,这个索引称为主控索引。可以是复合索引文件中的一个索引标识,也可以是临时索引文件。,打开表的同时设置主控索引指定复合索引文件的主控标识。USE 表文件名 ORDER TAG 标识名,3.3.6 索引的创建和使用,打开表后再设置主控索引,界面方式
20、命令方式 SET ORDER TO TAG名 IN 工作区|别名 ASCENDING|DESCENDING,3.3.6 索引的创建和使用,(2)利用索引快速定位记录,SEEK命令用于在一张表中搜索指定表达式的值首次出现的记录,这条记录的索引关键字必须与指定的表达式匹配。语法:SEEK 指定表达式 ORDER 索引标识 ASCE|DESCIN 工作区|别名如:USE JS ORDER GH SEEK“A0005”,3.3.6 索引的创建和使用,3.3.7 自由表 3.3.8 利用命令创建和修改表结构,3.4 永久关系和参照完整性,3.4.1 表之间的永久性关系库表之间的一种关系,不仅运行时存在,
21、而且 一直保留。拥有永久关系的表必须在数据库中。表之间的永久关系使用索引建立。永久关系的类型决定了使用的索引的类型。一对多关系中,主表必须用主索引关键字(或主索引标 识),或用候选索引关键字(或候选标识),子表则使用普 通索引关键字(或普通索引标识)。一对一关系中,两张表必须都用主索引关键字(或主索引标识)或候选索引。,永久关系的作用,在“查询设计器”和“视图设计器”中,自动作为默认连接条件。作为表单和报表的默认临时关系,在“数据环境设计器”中显示。用来存储参照完整性信息。,3.4.1 表之间的永久性关系,永久关系的建立,分以下几步进行:确定两张具有一对多或一对一关系的表。建立主表的主索引或候
22、选索引。如果是一对多关系,则在子表中以主表的外关键字建立普通索引;如果是一对一关系,则在子表中以与主表中相同的关键字建立索引或候选索引。从主表的主索引或候选索引到子表的相关的索引建立永久关系。,3.4.1 表之间的永久性关系,具体的操作为:,在界面方式下操作,利用“数据库设计器”。使用命令:在使用CREATE TABLE命令创建表时与FOREIGN KEY 子句一起使用。如:CREATE TABLE cj(xh C(6),kcdh C(6),cj;N(3,0),FOREIGN KEY xh TAG xh REFERENCE xs)如果cj表已经存在,则使用ALTER TABLE 命令来建立。A
23、LTER TABLE cj ADD FOREIGN KEY xh TAG;xh REFERENCE xs,删除、编辑修改永久关系,3.4.1 表之间的永久性关系,3.4.2 相关表之间的参照完整性,1、参照完整性的概念 是用来控制数据的一致性,尤其控制数据库相关表之间的主关键字和外部关键字之间数据的一致性。,数据一致性要求相关表之间须满足以下三个规则:(1)子表中的每一条记录在对应的主表中必须有一个父记录。(2)在父表中修改记录时,如果修改了主关键字的值,则子表中的相关记录的外部关键字值必须同样修改。(3)在父表中删除记录时,与该记录相关的子表中的记录必须全部删除。,孤立记录子表中的某些记录在
24、主表中没有对应父记录。,2、设置参照完整性,建立在永久关系的基础上。参照完整性规则被设置在主表或子表的触发器中,规则的代码保存在数据库的存储过程中。,具体设置:在“数据库设计器”中,通过永久关系建立。,3.4.2 相关表之间的参照完整性,更新规则:级联、限制、忽略删除规则:级联、限制、忽略插入规则:限制、忽略,3、VFP 数据完整性综述,三类完整性:(1)实体完整性(2)参照完整性(3)用户自定义完整性,实体完整性包括:字段的数据完整性和记录的数据完整性。参照完整性指:相关表之间的数据一致性。,3.4.2 相关表之间的参照完整性,3.5 有关数据库及其对象的常用函数,DBC()DBUSED()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 概述 ppt 课件
链接地址:https://www.31ppt.com/p-5357752.html