版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第四章 数据库及其操作一、考试大纲要求:1、了解(1)数据表文件的复制 (2)数据完整性2、掌握(1)数据库文件的创建,向数据库添加表或从数据库删除表(2)数据表在不同工作区的打开与关闭(3)表的联接JOIN (4)表的排序 (5)数据表的精确检索与模糊检索3、重点掌握(1)对数据表结构的操作:包括建立表结构、修改表结构、显示结构(2)对数据表记录的操作:包括表记录指针的定位,表记录的浏览、修改、删除与恢复、添加与插入(3)建立表之间的关联(4)表的索引:主、候选、普通、唯一索引(5)数据的统计与运算(记录个数的统计、数值求和、计算平均值、汇总分类等)二、知识要点(一)可以通过以下几种方式创建
2、数据库:(1)在“项目管理器”中创建数据库 打开“ 项目管理器” ,选择“ 数据” 选项卡中的“ 数据库” 然后单击“ 新建” 按钮,在弹出的“ 创建” 对话框中输入数据库名,单击“ 保存” 。 (2)由文件菜单创建数据库在系统菜单中,选择“文件”下拉菜单中的“新建”,在“新建”对话框中选择数据库文件类型,然后单击“新建文件”按钮,此时系统会弹出“创建” 对话框,在弹出的“创建”对话框中输入数据库名,并单击“保存”按钮。(3)通过命令建立数据库CREATE DATABASE 数据库文件名/? (4)打开数据库 OPEN DATA数据库文件名/? (5)修改数据库MODI DATA 数据库文件名
3、/?(6)删除数据库DELE DATA 数据库文件名/?(7)关闭数据库CLOS DATA【例题】1Visual FoxPro在建立数据库时建立了扩展名分别为_的文件。 Adbc Bdct Cdcx DA,B,C 解析 本题考查的知识点是创建数据库文件时出现的三个不同类型的文件。Visual FoxPro在建立数据库时建立了扩展名分别为dbc、dct、dcx的三个文件,这三个文件是供Visual FoxPro数据库管理系统管理数据库使用的、用户一般不能直接修改这些文件。因此正确答案为D。答案 D2在Visual FoxPro中,删除数据库的命令是_。 AQUIT DATABASE BCREAT
4、E DATABASE CDELETE DATABASE DCLEAR DATABASE解析 本题考查的知识点是删除数据库的命令。执行选项A命今后,将会退出Visual FoxPro;选项B中的命令用于创建数据库;选项C中的命令用于删除数据库;选项D中的命令错误。答案 C3. 在表设计器的_选项卡中,可以设置记录验证规则,有效性出错信息,还可以指定记录插入更新及删除的规则。 解析 本题考查的知识点是表设计器的应用。表设计器中有三个选项卡,在“字段”选项卡中可以设置字段名、类型、宽度、显示格式等属性。“索引”选项卡用来设置有关索引的属性:“表”选项卡用来设置表名,查看表文件的属性,记录有效性规则,
5、指定记录插入、更新及删除的规则。题目中的属性设置都是在“表”选项卡中进行。 答案 表(二)增加表记录 (1).APPEND命令 包括两种格式:APPEND和APPEND BLANK。APPEND命令需要立刻输入新记录;APPEND BLANK命令是在表的尾部增加一条空白记录。 (2).INSERT命令 格式为:INSERTBEFOREBLANK。不指定BEFORE则在当前记录之后插入一条新记录。不指定BLANK则直接输入新记录。(三)删除表记录 表记录的删除也是表维护的一项经常性的工作,因为删除意味着数据的消失,所以对记录的删除操作比较慎重,删除可分为逻辑删除和物理删除两种操作。逻辑删除还可以
6、恢复,而物理删除则不可恢复。 (1).逻辑删除 逻辑删除就是给指定的记录作删除标记“*”。【格式】DELETE <范围> FOR <条件> WHILE <条件>【功能】对当前表中指定范围内满足条件的记录作删除标记“*”。【说明】DELETE命令仅仅是在要删除的记录前加上一个删除标记“*”,并不是真正地从表文件中将该记录删除掉。可以用LIST或DISP命令显示带删除标记的记录。发现添加了删除标记的记录前面会显示竖黑条. 恢复逻辑删除的记录的命令是RECALL。(2).物理删除 是真正从表中删除记录,方法是:单击“表”菜单中的“彻底删除”命令。物理删除带删除标记
7、的记录命令是PACK。物理删除表中全部记录的命令是ZAP。(四)显示记录 【格式】LIST | DISPLAY FIELDS <字段名表><范围> FOR<条件表达式> WHILE <条件表达式> 【功能】将当前表文件的记录按照指定的选项进行显示。【说明】DISPLAY命令与LIST命令的功能相似,当表文件的数据记录较多时,用DISPLAY命令较为方便。 还有一点不同之处就是,如果同时缺省<范围>和 <条件>子句,DISPLAY命令只显示当前的一条记录,而LIST命令则是取默认值ALL而显示全部记录。FIELDS <
8、字段名表>:用来指定显示的字段。<范围>:用来指定显示哪些记录。“范围”有以下四种表示方法:ALL:所有记录。NEXT N:从当前记录开始,后面的N条记录(包括当前记录)RECORD N:第N条记录。REST:当前记录后的全部记录(包括当前记录)。 FOR<条件表达式>:指定对表文件中指定范围内满足条件的记录进行操作。WHILE<条件表达式>:也是指定对表文件中指定范围内满足条件的记录进行操作,但是,当第一次遇到不满足条件的记录时,停止继续往后搜索。WHILE<条件表达式>若与FOR<条件表达式>同时使用,则WHILE项优先;若
9、两者都不选用,则显示<范围>中指定的全部记录。OFF:表示不显示记录号;若不选此项,则在各记录前显示记录号。 (五)修改表记录 (1).EDIT和CHANGE命令用于交互式地修改、编辑表记录。【格式】EDIT / CHANGE FIELDS <字段名表> <范围> FOR <逻辑表达式1> WHILE <逻辑表达式2> (2). REPLACE命令用指定表达式的值替换当前表中满足条件记录的指定字段的值。【格式】REPLACE <字段名1> WITH <表达式1> , <字段名2> WITH <
10、表达式2> . <范围>FOR <逻辑表达式1> WHILE <逻辑表达式2>【例】修改职工.DBF中的“工资”字段数据,每个职工工资均涨10。 USE 职工 REPLACE 工资 WITH 工资*1.1 ALL2.要为当前表所有职工增加2年工龄,应使用的命令_。A. CHANGE 工龄 WITH 工龄+2B. REPLACE 工龄 WITH 工龄+2C. CHANGE ALL 工龄 WITH 工龄+2D. REPLACE ALL 工龄 WITH 工龄+2 解析本题考查的知识点是Visual FoxPro中修改记录的命令的使用。在Visual FoxP
11、ro中,修改记录的命令是 REPLACE。CHANGE命令和EDIT命令等同,均为打开当前表的编辑界面,BROWSE命令打开当前表的浏览界面。REPLACE命令才是修改当前表记录的命令,操作范围ALL不能省略。 答案 D(六)查询定位 记录号用于标识数据记录在表文件中的物理顺序。记录指针是一个指示器,它始终指向当前表中正在操作处理的那条记录,此记录被称为当前记录。如果要对某条记录进行处理,必须移动记录指针,使其指向该记录。在任意时刻指针只能指向唯一的一条记录。记录指针定位有绝对定位、相对定位和查询定位三种。在这里暂时只讲前二种,查询定位在讲到查询时再详细介绍。(1). 绝对定位【格式】GO |
12、 GOTO <数值表达式1>【功能】将记录指针绝对定位到<数值表达式1>指定的记录上。(2)相对定位skip(七). 表的索引(1)索引及索引文件的概述 索引是以索引文件的形式存在的,它根据指定的索引关键字表达式建立的。索引文件可以看成索引关键字的值与记录号之间的对照表,关键字可以是一个字段,也可以是几个字段的组合。在建立索引文件时,把表所有记录的索引关键字表达式的值按指定顺序排序,并把每个索引关键字表达式值与该值在表中所对应的记录对应起来,保存在索引文件中。 索引文件必须与原表一起使用,查询时根据索引关键字表达式的值先在索引文件中找到某字段所在的记录号,然后再到表里直
13、接定位。这样的查找方式使顺序查找和随机查找都有较高的效率。打开索引文件时,将改变表中记录的逻辑顺序,但并不改变表中记录的物理顺序。 一个表文件可建立多个索引文件,也可同时打开多个索引文件,但在同一时间内只有一个索引起作用,这个索引称为主控索引。 Visual FoxPro系统中支持两种不同的索引文件类型,即单索引文件和复合索引文件。 单索引文件是根据一个索引关键字建立的索引文件,文件扩展名为.IDX,它可用INDEX命令的各种形式建立。单索引文件分为标准和压缩两种类型。 复合索引文件是指索引文件中可以包含多个索引标识的扩展名为.CDX。每个索引标识与单索引文件类似,也可以根据一个索引关键字表达
14、式(或关健字)建立。每一个索引标识均有一个特殊的标识名(TAG)。标识名由字母或下划线开头,由字母、数字或下划线组成,长度不超过10个字符。用户可以利用标识名来使用标识,向复合索引文件中追加标识。复合文件中标识的数目,仅受内存和磁盘空间的限制。 复合索引文件又有两种:一种是独立复合索引文件;另一种是结构复合索引文件。 结构复合索引文件是由Visual FoxPro自动命名的,与相应的表文件同名,扩展名为.CDX。当Visual FoxPro打开一个表时,便自动查找一个结构复合索引文件,如果找到便自动打开,该索引文件随表文件同时打开和同时关闭。 独立复合索引文件不与表文件同名,扩展名为.CDX。
15、在打开表时不会自动打开此索引文件,由命令指定打开。索引可分为下列四种类型: 1)主索引 主索引是一个永远不允许在指定字段和表达式中出现重复值的索引。它也是在数据库表的永久关联中创建参照完整性时主表和被引用表使用的索引。每一个表只能建立一个主索引,只有数据库表才能建立主索引。2)侯选索引 侯选索引也是一个不允许在指定字段和表达式中出现重复值的索引。数据库表和自由表都可以建立侯选索引,一个表可以建立多个侯选索引。 主索引和侯选索引都存储在.CDX结构复合索引文件中,不能存储在于独立复合索引文件和单索引文件中,因为主索引和侯选索引都必须与表文件同时打开和同时关闭。3)唯一索引 系统只在索引文件中保留
16、第一次出现的索引关键字值。数据库表和自由表都可以建立唯一索引4)普通索引 是一个最简单的索引,允许关键字值的重复出现,适合用来进行表中记录的排序和查询,也适合于一对多永久关联中“多”的一边(子表)的索引。数据库表和自由表都可以建立普通索引。 普通索引和唯一索引可以存储在.CDX独立复合索引文件和.IDX单索引文件中。(2)索引文件的建立1)命令方式【格式】INDEX ON <索引关键字表达式> TO <单索引文件> | TAG <标识名> OF <独立复合索引文件名> FOR <逻辑表达式> COMPACTASCENDING | DE
17、SCENDINGUNIQUE ADDITIVE(p99)【功能】对当前表文件按指定的关键字建立索引文件。【说明】<索引关键字表达式>:指定建立索引文件的关键字表达式,可以是单一字段名,也可以是多个字段组成的字符型表达式,表达式中各字段的类型只能是数值型、字符型和日期型和逻辑型。 当表达式是单个字段名时,字段类型不用转换;应转换成同一类型的表达式。TAG <标识名>:此选项只对建立复合索引文件时有效,指定建立或追加索引标识的标识名。OF <独立复合索引文件>:指定独立复合索引文件名。若有此选项,表示在指定的独立复合索引文件中追加一个索引标识,若指定的独立复合索
18、引文件不存在,系统将自动建立指定的文件。若没有此选项,表示在结构复合文件中追加一个索引标识,若结构复合索引文件不存在,系统将自动建立结构复合索引文件。FOR <逻辑表达式>:表示只对满足条件的记录建立索引。【例3】在表文件STUD.DBF的结构复合索引文件中,按学号 追加一个标识。 USE STUD INDEX ON 学号 TAG 学号【例4】在表文件STUD.DBF的结构复合索引文件中,先按性别再按学号追加一个标识XBXH。 USE STUD INDEX ON 性别+学号 TAG XBXH【例5】在表文件STUD.DBF中,先按性别再按是否团员建立一个独立复合索引文件SXBTY.
19、CDX。 USE STUD INDEX ON 性别+IIF(是否团员,团员,非团员) TAG 性别团员 OF SXBTY2)菜单方式 打开表文件。 选择【显示】|【表设计器】命令,打开表设计器对话框,选择“索引”标签。 在索引名中输入索引标识名,在类型的下拉列表框中确定一种索引类型,在表达式中输入索引关键字表达式,在筛选中输入确定参加索引的记录条件,在排序序列下默认的是升序按钮,单击可改变为降序按钮。 确定好各项后,选择“确定”,关闭表设计器,同时索引建立完成。 同样的方法也可以将以前建立的索引调出,利用表设计器上的“插入”或“删除”按钮进行插入或删除。注意:用表设计器建立的索引都是结构复合索
20、引文件。 (3)索引文件的打开【格式1】USE <文件名> INDEX <索引文件名表|?>ORDER <数值表达式2> | <单索引文件> | TAG <标识名> OF <复合索引文件名>ASCENDING | DESCENDING 【功能】打开指定的表文件及相关的索引文件【说明】:INDEX <索引文件名表> | ?:表示打开的索引文件;如果选择“?”,则系统将出现“打开”对话框,供用户选择索引文件名;如果<索引文件名表>中的第一个索引文件是单索引文件,则它是主索引文件,若第一个索引文件是复合索
21、引文件,则表文件的记录将以物理顺序被访问。<索引文件名表>:指定要打开的索引文件,索引文件中的文件扩展名可以省略,但如果存在同名的单索引文件和复合索引文件,必须带扩展名。 <索引文件名表>中的单索引文件和复合索引文件的标识有一个唯一的编号,编号最小值为1,编号规则为:先将单索引文件按它们在<索引文件名表>中的顺序编号,再将结构复合索引文件按标识产生的顺序连续编号,最后将独立复合索引文件中的标识先按它在<索引文件名表>中的顺序,再按标识产生的顺序连续编号。 ORDER子句:指定主索引。选择此选项时,主索引文件将不是<索引文件名表>中的第
22、一个单索引文件,而是此选项指定的单索引文件或标识。ORDER子句中各选项的含义如下:¡ñ<数值表达式2>指定主索引的编号,若<数值表达式2>的值为0,表示不设主索引。¡ñ<单索引文件>指定的单索引文件设置为主索引。¡ñ TAG <标识名> OF <复合索引文件名>:表示将<复合索引文件名>中的指定标识作为主索引。OF <复合索引文件名>缺省表示为结构复合索引文件。 ¡ñ ASCENDING | DESCENDING:表示主索引被强制
23、以升序或降序索引;缺省此选项,主索引按原有顺序打开。(4)索引文件的关闭【格式1】USE【功能】关闭当前工作区中打开的表文件及所有索引文件。【格式2】SET INDEX TO【功能】关闭当前工作区中打开的所有单索引文件和独立复合索引文件。【格式3】CLOSE INDEXS【功能】关闭当前工作区中打开的所有单索引文件和独立复合索引文件。注意:结构复合索引文件不能用以上命令关闭,它随表文件的打开而打开,随表文件的关闭而关闭。 (5)索引的删除1)标识的删除【格式】DELETE TAG <标识名1> OF <复合索引文件名1>, <标识名2> OF <复合索
24、引文件名2> . 或:DELETE TAG ALL OF <复合索引文件名>【功能】从指定的复合文件中删除标识【说明】OF <复合索引文件名>:指定复合索引文件名,若缺省,则为结构复合索引文件。 (6). 索引查询(FIND、SEEK) 1)菜单方式 首先打开表文件 选择【显示】|【浏览】命令。 选择【表】|【转到记录】|【定位】命令,打开定位记录对话框。 在“作用范围”下拉列表框中选择查询范围,在FOR或WHILE框中输入查询条件,选择定位按钮。系统将指针定位于符合条件的第一条记录上。2). 索引查询(FIND、SEEK) LOCATE命令用于按条件进行顺序定位
25、,无论索引文件是否打开都可使用。在打开索引文件后,还可以用FIND、SEEK命令进行快速检索。 aFIND命令【格式】FIND <字符串>/<数值常量>【功能】在表文件的主控索引中查找关键字值与<字符串>或<数值常量>相匹配的第一个记录。【说明】 1)必须打开相应的库文件、主索引文件。2)查询字符串,字符串可以不用定界符括起来,但前后有空格的,则必须要括进来。3)查询常数,必须使用索引关键字的完整值。4)允许查询字符型内存变量,但必须使用宏替换函数。5)由于索引文件中关键字表达式值相同的记录总是排在一起的,可用SKIP、DISP命令来逐个查询。6
26、)查询完满足条件的记录后,不能自然给出提示,常借助于EOF()函数来判断查询是否完成。7)多关键字查询,建立索引时STR函数若没有指定小数位,则应补齐不足10位的空格。【例题】打开表文件STUD.DBF,查找姓“赵”的记录。 USE STUD SET ORDER TO 姓名 FIND 赵5)表达式为字符串时,必须用定界符括起来。日期常量也必须用大括号括起来。6)表达式可以为一复杂的表达式,计算机先计算表达式的值,然后用其值进行查询。7)由于索引文件中关键字表达式值相同的记录总是排在一起的,可用SKIP、DISP命令来逐个查询。【例】用SEEK命令在STUD.DBF中查找记录。 USE STUD
27、 INDEX ON 是否团员 TAG 是否团员 SET ORDER TO 姓名 SEEK "孙"8. 在Visual FoxPro中,SKIP命令是按_定位,即如果使用索引时,是按_的顺序定位。 解析 本题考查的知识点是SKIP命令的使用。在Visual FoxPro中。SKIP命令是按逻辑顺序定位,即如果使用索引时,是按索引项的顺序定位的。 答案 逻辑顺序,索引项9. 在Visual FoxPro中,创建索引的命令是_。 解析 本题考查的知识点是创建索引的命令。在Visual FoxPro中,创建索引的命令是INDEX。 答案 INDEX10. 在Visual FoxPr
28、o中,用命令可以创建_索引,但不可以创建_索引。 解析 本题考查的知识点是利用命令创建索引。在Visual FoxPro中,利用命令可以创建普通索引、惟一索引和候选索引。这是因为表设计器中指定一个主索引实际就是指定了一个主关键字 答案 普通索引、惟一索引、候选索引,主索引13. 多表的操作 迄今所讲述的对表的操作都是在一个工作区进行的,每个工作区最多只能打开一个表文件,用USE命令打开一个新的表,同时也就关闭了前面已打开的表。在实际应用中,用户常常需要同时打开多个表文件,以便对多个表文件的数据进行操作。为了解决这一问题,Visual FoxPro引入了工作区的概念。Visual FoxPro允
29、许用户在表间建立临时关系和永久关系。14. 工作区与多个表(1)工作区和当前工作区 Visual FoxPro 能同时提供32767个工作区。系统默认值为1区。 在任意时刻,只有一个工作区是当前工作区,用户只能在当前工作区对打开的当前库进行操作。 每一个工作区都可以并且只能打开一个数据库文件。 同一个数据库文件不允许同时在多个工作区打开,但在其它工作区中被关闭之后,可以在任意一个工作区中被打开。 各工作区中打开的数据库彼此相互独立(指针不受影响)。 (2)选择当前工作区 每一个工作区用工作区号或别名来标识1)工作区号 利用数字132767来标识32767个不同的工作区2)别名 前10工作区用A
30、J10个字母来标识。 采用该工作区中已打开的数据库的库名来作别名 用户自己定义 【命令格式】 :USE 数据库名ALIAS别名 【功能】 :打开数据库文件并为该数据库起一个别名。 【说明】给数据库起了别名后,数据库名就不是默认的别名了。3)工作区的选择 当系统启动时,1号工作区是当前工作区,若想改变当前工作区,则可使用SELECT命令来转换当前工作区。【命令格式】:SELECT<工作区号>/<工作区别名>【功能】:选择一个工作区作为当前工作区。【说明】:n <工作区号> | <工作区别名>:指定当前工作区。选择工作区时,可以直接指定区号,也可以通
31、过别名指定工作区,二者是等效的。n 别名可以是系统规定的别名,也可以是用户规定的别名,甚至可以用已打开的表名替代工作区别名。此命令允许选用“0”号工作区。如果指定“0”,则表示选用当前未使用过的编号最小的工作区作为当前工作区。n 执行该命令后,对任何工作区中的表及记录指针均不发生影响,仅实现各个工作区之间切换。 【例1】在1号和2号工作区内分别打开ST.DBF和SE.DBF表文件,并选择1号工作区为当前工作区。 SELECT 1 && 或 SELECT A USE ST SELECT 2 USE SE SELECT 115. 表的关联(1)关联的概述 所谓表文件的关联是把当前工作区中打开的表与另一个工作区中打开的表进行逻辑连接,而不生成新的表。当前工作区的表和另一工作区中的打开表建立关联后,当前工作区是表的记录指针移动时,被关联工作区的表记录指针也将自动相应移动,以实现对多个表的同时操作。 在多个表中,必须有一个表为关联表,此表常称为父表,而其他的表则称为被关联表,常称为子表。在两个表之间建立关联,必须以某一个字段为标准,该字段称为关键字段。表文件的关联可分为一对一关联、一对多关联和多对多关联。 (2)表文件关联的建立1)一对一关联的建立1)命令方式【格式】SET RELATION TO <关键字段表达式> | <数值表达式&g
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年人工智能训练师高级技师职业资格认定考试题库含答案
- 腾讯游戏安全答题答案
- 打造环保品牌
- 2025《环境监测工程师》考试真题及答案
- 临床检验考调试题及答案2025年版
- 2024年社会工作者考试题库试题及答案
- 梅毒丙肝培训试题及答案解析(2025版)
- 2025年无损检测员(中级)职业技能鉴定试卷含答案
- 车工(数控)高级理论知识试卷及答案
- 铁路单招试题及答案
- 挖机转让按揭合同范本
- 茶叶冲泡指南与技法精要
- 灵巧手的历史、技术路线、典型代表和设计
- 财务报销流程及制度标准范本
- 【低空经济】低空经济校企合作方案
- 2026年初级经济师之初级经济师人力资源管理考试题库500道及答案【全优】
- 2025-2030民办国际化学校发展现状与未来机遇研判
- 山东护士证考试题库及答案
- 2025年温州平阳县县属国有企业公开招聘61人备考考试题库附答案解析
- 2025年司法局招聘司法所协理员历年考试试题及答案
- 人工智能背景下医疗行业就业岗位发展分析报告
评论
0/150
提交评论