第三章习题及答案.doc_第1页
第三章习题及答案.doc_第2页
第三章习题及答案.doc_第3页
第三章习题及答案.doc_第4页
第三章习题及答案.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

一、思考题1什么是数据库表?什么是自由表?2什么是表结构?表的哪几种字段的宽度是固定不变的?3打开表文件之后,为什么在Visual FoxPro主窗口没有任何显示信息?4如何编辑备注型字段的值?5LIST命令和DISPLAY命令有什么区别?6如果缺省范围子句,哪几条命令只对当前记录操作?7ZAP命令和PACK命令有什么区别?8什么是记录指针,它的作用是什么?9什么是排序和索引?为什么索引的查询效率高?10Visual FoxPro有几种类型的索引?是否所有的索引都可以在自由表中使用?在表设计器中可以创建的索引文件是哪一种?11什么是主控索引文件和主控索引标识?它们的作用是什么?12LOCATE、FIND、SEEK命令在使用上有什么区别?怎么判断查询是否成功?二、选择题1某表文件有5个字段,其中3 个字符型宽度分别为6、12、和10,另外还有一个逻辑型字段和一个日期型字段,该数据库文件中每条记录的总字节数是 。A)37 B)38 C)39 D)402在表文件文件尾部增加一条空记录,应该使用命令 。A)APPEND B)APPEND BLANK C)INSERT D)INSERT BLANK3设表文件及其索引文件已打开,为了确保指针定位在物理记录号为1的记录上,应该使用命令 。A)GO TOP B)GO BOF() C)SKIP 1 D)GO 14设职工表文件已经打开,其中有工资字段,要把指针定位在第一个工资大于620元的记录上,应使用命令 。A)FIND FOR 工资620 B)SEEK 工资620C)LOCATE FOR 工资620 D)FIND 工资6205删除学生表中姓王的学生,应使用命令 。 A)DELETE FOR “王”$姓名 B)DELETE FOR SUBSTR (姓名,1,2)“王”C)DELETE FOR 姓名王* D)DELETE FOR RIGHT (姓名,1)“王”6USE职工 LOCATE FOR工资=900 为了将指针定位在下一个工资是900的记录上,应该接着使用命令 。A)SKIP B)CONTINUE C)SEEK 900D)FIND 9007设当前表有10条记录,当EOF()为真时,命令?RECNO()的显示结果是 。A)10 B)11 C)0 D)空8设当前表中姓名字段为字符型,要把内存变量NAME 字符串的内容输入到当前记录的姓名字段,应当使用命令 。A)姓名=NAME B)REPLACE 姓名 WITH NAMEC)REPLACE 姓名 WITH &NAME D)REPLACE ALL 姓名 WITH NAME9在Visual FoxPro中,打开索引文件的命令中,错误的是 。A) USE INDEX TO B) USE INDEX C) INDEX ON 职工号 TO D) SET INDEX TO 10顺序执行下面命令之后,屏幕所显示的记录号顺序是 。USE XYZGO 6LIST NEXT 4A)14 B)47 C)69 D)71011在Visual FoxPro中,可以使用FOUND()函数来检测查询是否成功的命令包括 。A) LIST、FIND、SEEK B)FIND、SEEK、LOCATEC) FIND、DISPLAY、SEEK D) LIST、SEEK、LOCATE三、上机题1.建立表与复制表操作:(1)建立一个职工表(zg.dbf),字段有:职工号(C,6),姓名(C,8),性别(L),出生日期(D),职称(C,10),基本工资(N,8,2),奖金(N,8,2),实发工资(N,8,2),其内容如下:(2)修改职工表表结构,在实发工资前增加一个新的字段,扣款(N,8,2)。(3)将zg.dbf的表结构复制到新表zg1.dbf中。(4)将zg.dbf 中的所有男教师的记录都复制到zg2.dbf中。2.写出下列显示表记录的命令。(1)显示zg.dbf中所有的讲师(2)显示所有女教师的姓名(3)显示70年后出生的教师(4)显示第三条记录的内容(5)显示前三条男教师的姓名,出生日期,职称(6)从第3条记录开始显示到末尾记录(7)显示所有男教授的姓名、年龄、基本工资(8)显示所有男性教授或副教授(9)显示所有姓林的教师(10)显示姓名中有“林”字的记录。3.修改命令。(1)计算实发工资字段的值,实发工资基本工资津贴扣款。(2)在实发工资为0的情况下,分别执行下列三条命令,比较它们的执行结果。Repl 实发工资 with 基本工资+津贴扣款Repl 实发工资 with 基本工资+津贴扣款for 职称=讲师Repl all 实发工资 with 基本工资+津贴扣款4.完成下列删除与恢复的命令。(1)删除所有男教师的记录(2)在删除所有男教师的记录的前提下,除姓“林”的外,恢复所有男教师的记录(3)在删除所有男教师的记录的前提下,除姓“陈”的助讲外,恢复所有男教师的记录5.对zg.dbf完成下排序、索引命令。(1)按基本工资降序建立排序文件szg1.dbf(2)按基本工资建立单项索引,文件名为izg1.idx(3)按基本工资建立结构复合索引文件,按降序索引(4)按基本工资建立独立复合索引文件,索引标识为jbgz,按降序索引,文件名为zgd1.cdx(5)按基本工资升序,基本工资相同再按出生年月建立索引文件,文件名为zgd2.cdx(6)分别按姓名、职称、出生日期建立结构复合索引文件,索引标识分别为XM、ZC、BIRTHDAY。(7)打开前面所建的所有索引文件,设置结构复合索引文件为主控索引文件,设置XM为主控索引。6.查找与统计。(1)查找林一凡(2)查找姓王的人(3)查找工资是820.00的记录(4)查找职工号为3002姓名为丁强的记录(5)查找66年8月4日出生,职称为副教授的记录(6)统计男教师与女教师的人数(7)统计女教师的实发工资、津贴总和(8)求男教师的平均基本工资(9)计算平均基本工资、平均津贴、最高基本工资和最少基本工资(10)按职称进行基本工资的汇总,汇总结果写入表zchz.dbf6参考答案二、选择题1、B 2、B 3、D 4、C 5、B 6、B 7、B 8、B 9、A 10、C 11、B三、上机题1.建立表与复制表操作:(1)用表设计器建立表zg.dbf,步骤详见4.1.2建立表结构。(2)修改zg.dbf表结构,步骤详见4.2.1 表结构的修改。(3)将zg.dbf的表结构复制到新表zg1.dbf中。USE ZGCOPY STRU TO ZG1(4)将zg.dbf 中的所有男教师的记录都复制到zg2.dbf中。USEZGCOPYTOZG2FOR性别2.写出下列显示表记录的命令。(1)显示zg.dbf中所有的讲师USEZGLISTFOR职称“讲师”(2)显示所有女教师的姓名LIST 姓名 FOR 性别=.F.(或 LIST 姓名 FOR !性别 )(3)显示70年后出生的教师LIST FOR 出生日期1970/01/01或LIST FOR YEAR(出生日期)1970(4)显示第三条记录的内容LIST RECO 3(5)显示前三条男教师的姓名,出生日期,职称GO TOPLIST NEXT 3 FOR 性别 FIELDS 姓名,出生日期,职称(6)从第3条记录开始显示到末尾记录GO 3LIST REST(7)显示所有男教授的姓名、年龄、基本工资LIST 姓名,年龄,基本工资 FOR 性别 AND 职称=教授(8)显示所有男性教授或副教授LIST FOR 性别 AND (职称=教授 OR 职称=副教授)(9)显示所有姓林的教师命令一:LIST FOR LEFT(姓名,2)=林命令二:LIST FOR SUBSTR(姓名,1,2)=林命令三:LIST FOR 姓名=林(10)显示姓名中有“林”字的记录。LIST FOR 林$姓名3.修改命令(1)计算实发工资字段的值,实发工资基本工资津贴扣款。REPLALL实发工资WITH基本工资津贴扣款(2)在实发工资为0的情况下,分别执行下列三条命令,比较它们的执行结果。REPL 实发工资 WITH 基本工资+津贴扣款REPL 实发工资 WITH 基本工资+津贴扣款FOR 职称=讲师REPL ALL 实发工资 WITH 基本工资+津贴扣款4.完成下列删除与恢复的命令(1)删除所有男教师的记录DELE FOR 性别(2)在删除所有男教师的记录的前提下,除姓“林”的外,恢复所有男教师的记录RECA FOR !(SUBSTR(姓名,1,2)=林)(3)在删除所有男教师的记录的前提下,除姓“陈”的助讲外,恢复所有男教师的记录RECA FOR !(SUBSTR(姓名,1,2)=陈 AND 职称=助教)5.对zg.dbf完成下排序、索引命令(1)按基本工资降序建立排序文件szg1.dbfSORT ON 基本工资/D TO SZG1(2)按基本工资降序建立单项索引,文件名为izg1.idxINDEX ON -基本工资 TO IZG1(3)按基本工资建立结构复合索引文件,按降序索引 INDEX ON 基本工资 TAG GZ DESC(4)按基本工资建立独立复合索引文件的降序,索引标识为jbgz,文件名为zgd1.cdx INDEX ON 基本工资 DESC TAG JBGZ OF ZGD1(5)按基本工资升序,基本工资相同再按出生年月建立索引文件,文件名为zgd2.cdx USE ZGINDEX ON STR(基本工资,6,2)+DTOC(出生日期) TAG GZCS OF ZGD2 (6)分别按姓名、职称、出生日期建立结构复合索引文件,索引标识分别为XM、ZC、BIRTHDAY。 USE ZG1INDEX ON 姓名 TAG XM INDEX ON 职称 TAG ZCINDEX ON 出生日期 TAG BIRTHDAY(7)打开前面所建的所有索引文件,设置结构复合索引文件为主控索引文件,设置XM为主控索引。SET INDEX TO IZG1, ZGD1,ZGD2 ORDER TAG XM或 SET INDEX TO IZG1, ZGD1,ZGD2 SET ORDER TO TAG XM6.查找与统计(1)查找林一凡USE ZGSET INDEX TO XMFIND 林一凡SEEK 林一凡(2)查找姓王的人FIND 王SEEK 王(3)查找工资是820.00的记录INDEX ON 基本工资 TAG SALARYFIND 820 或SEEK 820(4)查找职工号为3002叫丁强的记录INDEX ON职工号姓名 TAG GHXMFIND 3002丁强或SEEK 3002+丁强(5)查找66年8月4日出生的副教授INDEX ON DTOC(出生日期)+职称 TO BZCSEEK 08/04/66+副教授(6)统计男教师与女教师的人数COUNT FOR 性别 TO X1COUNT FOR !性别 TO X2(7)统计女教师的实发工资、津贴总和SUM 实发工资

温馨提示

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

评论

0/150

提交评论