《数据库原理及其应用.doc》由会员分享,可在线阅读,更多相关《数据库原理及其应用.doc(12页珍藏版)》请在课桌文档上搜索。
1、-数据库原理及其应用模拟题1一、选择题1、( D )在下列表达式中,计算结果为字符型的是:A1234+ASC(“A”) B. SQRT(4)*12/24/60CCTOD(“12/24/94”)DATA( ) D. “2.13”+SUBSTR(“联想汉字操作系统”,5,12)2、( C )关于自由表的叙述,正确的是A. 全部是用以前版本的Fo*Base建立的表B. 可以用VFP建立,但不能把它添加到数据库中C. 自由表可以添加到数据库中,数据库表也可以从数据库中移出成为自由表D. 自由表可以添加到数据库中,但数据库表不能从数据库中移出成为自由表3、( D )下列选择中都是方法程序的是: ACls
2、,setfocus,pset,release BCls,caption,pset,release CCls,refresh,release,initDSetfocus,getfocus,lostfocus,cls4、( C )查询设计器包括的选项卡有A. 字段、条件、分组依据B. 联接、杂项、索引C. 筛选、排序依据、字段D. 排序依据、分组依据、条件二、填空题1、文本框用于数据输入输出的属性是 VALUE 。2、用于处理文本信息的控件有:文本框、 标签 、编辑框。3、SQL语言所具有的功能是 数据输入 、数据操纵、数据控制。4、查询向导中可以有三种选择:查询向导、交叉表格查询、 图形向导 。
3、5、参照完整性的规则包括插入规则、 更新删除 、删除规则。6、建立索引的字段值不允许重复,且一个表中只能创建一个,它应该是 主控 索引。7、在数据表中,每一行是关于客观事物的具体描述,叫做 记录 。8、表结构定义了数据表的字段个数、字段名、 字段类型 、字段宽度和小数位数等内容。9、日期型常量的一般格式为 MM/DD/YYYY 。10、数据库表中的字段有效性规则用来指定 控制用户输入到字段中的数据的取值*围 。11、数据库系统的组成是软件、计算机硬件、数据库、应用程序、用户12、利用SQL语句创建一个表文件,文件名为student,表结构由五个字段组成,分别是*m 字符类型,长度为10;*b
4、字符类型,长度为2,默认值为“男”; csrq 日期类型; sfty 逻辑类型;bz 备注类型。Creat table student (*m c(10),*b c(2) default “男”,csrq D,sfty ,bz) 13、假设有一个设备管理表sb.dbf,其表结构为:sb (编号 C(5),名称 C(6),启用日期 D,价格 N(9,2),部门 C(2),主要设备 L)在sb表中编号字段值要求唯一。利用SQL语句查询sb表中价格大于10000元的所有主要设备。Select 名称 from sb where 价格10000 .and. 主要设备 14、假设由一个设备管理表sb,其结
5、构见第15题。还有一个设备大修表d*.dbf,其表结构为:d*(编号 C(5),费用 N(6,1)),每台设备大修一次,就作为一条记录保存在d*表中,因此一台设备在d*表中可能有多条记录,即维修过多次。利用SQL语句查找设备编号为106-1的设备的大修费用及其设备名称,并按费用降序排列。Select sb.名称 D*.费用 from sb.D* where sb.编号=“016-1”.and. sb.编号=D*.费用 order by D*.费用 Descending 15、利用SQL语句查询设备管理表sb中的部门数。Select count(部门) from sb 16、对象事件是指 对象能
6、识别并响应的动作 。17、焦点事件包括When事件、Valid事件、 GetFocus 事件、 LostFocus 事件18、CLEAROS=0JS=0I=1 DO WHILE I=100If I%2=0 OS=OS+1 ELSE JS=JS+1ENDIF I=I+1 ENDDO”偶数和”, OS”奇数和”, JS19、下列程序中循环语句的作用是:保证输入一个三位数 CLEARDO WHILE .T.INPUT 请输入一个三位的正数: TO YIF Y999 LOOP &返回循环开始ELSE E*it &退出循环ENDIFENDDOY三、简答及描述题1、举例说明五种VFP数据类型的特点。2、建
7、立一个名为“studbc”的数据库。在该数据库中建立如下数据表,名为studbf,结构为 studbf(* C 7,* C8, 性别 C2,年龄 N2,照片 G) *性别年龄照片2005101李明男192005102孙丽女18 每个记录的照片字段内都存有照片。写出详细的建立过程。3、如何设置“默认”命令按钮.如何设置图文按钮.举例说明如何设置命令按钮的访问键。参考答案:1、(1)字符型字符型数据可以包含字母、数字、空格、汉字和符号。如“SDFG”、“12345”、“计算机”为字符型常量。*、性别、家庭住址都是用汉字表示的,他们的数据类型也是字符型的。在内存中一个字符占用一个字节,一个汉字占用两
8、个字节。(2)数值型数值型数据是由09、小数点及正负号组成。如234.7、-78、12.86。(3)逻辑型这种数据类型表达了一个逻辑值。该逻辑值有两种可能的取值:真(.T.)或假(.F.)。每个逻辑型数据占用个字节。(4)日期型由年、月、日组成的数据。每个日期型数据长度为8个字节。例如2002-07-28。(5)备注型备注型只适用于字段。用来存储较多的文字,例如:个人简历、产品说明、图书简介等都可以定义为备注型。2、第一步,打开表设计器。单击常用工具栏中“新建”按钮打开“新建”对话框选择“表”单击“新建文件”按打开“创建”对话框输入表文件名:studbf单击“保存”按钮打开表设计器。 第二步,
9、创建表结构。在“字段名”处输入“*”,“类型”选“字符型”,宽度输入7;同样操作输入*、性别、年龄、照片四个字段名,并分别定义其类型和宽度。第三步,建立完毕,单击“确定”按钮,在弹出的“现在输入数据记录吗.”提示对话框中单击“是”按钮。第四步,输入记录数据。在打开的记录编辑窗口中输入第一个记录的第一个字段值“2005101”,依次输入“李明”,“男”,19,三个字段值。光标移到“照片”字段编辑框,双击该编辑框,打开“照片”字段编辑窗口。单击“编辑”菜单“插入对象”命令,打开“插入对象”对话框,选择“由文件创建”单选钮,找到照片文件添加到“照片”字段里。同样操作完成所有的记录输入。第五步,退出记
10、录编辑窗口后,在VFP的命令窗口中输入USE命令,回车,保存studbf文件到磁盘中。3、若表单上有多于一个的命令按钮,可将其中一个设定为默认命令按钮,方法是该命令按钮的Default属性赋值为.T.。每个表单上有且只有一个命令按钮为默认按钮。当一个命令按钮设置为默认按钮后(其Enabled属性必须为.T.),同一表单上的其他命令按钮的Default属性将自动变为.F.。使命令按钮的Caption属性和Picture属性都赋上相应的值则可将该命令按钮设置为图文按钮。命令按钮的访问键设置方法是:在Caption属性值中作为访问键的字母前加上“”两个符号,显示时该字母下方有一条下划线,这个字母就成
11、了访问键。当表单运行时,按Alt访问键后,焦点马上移到这个命令按钮上。例如将*个命令按钮的Caption属性中赋值为“退出(E)”,则这个命令按钮的访问键就是字母e键。四、程序设计题 1、输入一个整数,当为偶数时,求其立方;当为奇数时,求其平方。2、设计一个输入用户密码的表单,界面如下。输入密码时在文本框中显示“*”,密码错误时显示“密码错,请重新输入!”,三次输入不正确时显示“对不起,你不是合法用户!”后结束表单运行;输入正确密码后显示“密码正确!可以进入系统。”,然后结束表单运行。参考答案:1、CLEARINPUT “请输入一个数:” TO *IF *%2=0 或INT(*/2)=*/2
12、y=*3 ”该数是偶数,其立方为:”, yELSE y=*2 ”该数是奇数,其平方为:”, yENDIF2、第一步,创建一个表单,然后在其中创建标签和文本框各一个,命令按钮二个。第二步,属性设置控件属性属性值label1Caption密码:te*t1PasswordChar*Value(清空)mand1Caption确定mand2Caption取消第三步,程序编写Form1的Load事件: PUBLIC i i0mand1的Click事件: i=i+1 IF THISFORM.Te*t1.Value=”123456” MESSAGEBO*(“密码正确!可以进入系统。”)THISFORM.RLE
13、ASE ELSE IF i3 MESSAGEBO*(“密码错,请重新输入!”) THISFORM.te*t1.VALUE=” ELSE MESSAGEBO*(“对不起,你不是合法用户!”) THISFORM.RELEASE ENDIF ENDIFmand2的Click事件: THISFORM.RELEASE数据库原理及其应用模拟题2本试卷用到的表及其结构为:Rsgl表(编号 C,*C,性别 C,出生日期 D,职称 C,工资 N(7,2),婚否 L)一、选择题1、( A )数据库管理系统的四个组成部分,包括数据定义语言、数据操纵语言、实用程序和 A. 数据控制语言B. 数据执行语言C. 数据管理
14、语言D. 数据形式语言2、( B )下列关于子句的说法正确的是 A. 所有带有子句的命令的默认*围都是ALLB. NE*T 只对从当前记录开始的以下n个记录进行操作C. RECORD 对n个记录进行操作D. 子句一般有三种选择:ALL, NE*T , RECORD 3、( A )用List命令显示当前表中1990年以后(不包括1990年)工作的男同志,且只显示*、工作时间和工资三个字段。A. LIST FOR YEAR(工作时间)1990 AND 性别=”男” FIELDS *, 工作时间, 工资B. LIST FIELDS *,工作时间,工资 FOR 工作时间1990 AND 性别男C. L
15、IST FIELDS *,工作时间,工资 FOR 1990 AND 男D. LIST FIELDS *,工作时间,工资 FOR YEAR(工作时间)0B. CREATE TABLE student ADD *f N(3) CHECK *f 0C. ALTER TABLE student ADD *f N(3) CHECK *f 0D. DROP TABLE student ADD *f N(3) CHEAK *f 0二、填空题1、VFP中的变量包括内存变量和 字段变量 。2、逻辑运算符有AND、OR和 NOT 3、在数据表中,每一行是关于一个客观事实的具体描述,叫做 记录 。4、数据表的关闭命
16、令是 USE 。5、VFP的四种索引类型是主索引、普通索引、唯一索引和 候选索引。6、为确保数据库中表间关系不被破坏而设置的一组规则是 参照完整性 。7、查询文件中保存的是 查询设置 。8、创建数据表的SQL语句是 create table 。9、VFP的三种工作方式是菜单工作方式、命令工作方式和 程序方式 。10、VFP提供的用于建立应用程序界面的最主要工具之一是 表单设计器 。11、VFP中删除操作分为两步,首先是进行 逻辑删除 ,然后再进行 物理删除 。12、数据环境泛指定义表单或表单集时使用的 数据源 ,包括 表 、视图和关系。13、完成“从当前记录开始的10个记录中所有讲师的工资每人
17、增加600元”的操作: Replace ne*t 10 GZ with GZ+600 for ZC=”讲师 14、对Rsgl表查询1960年(包括1960年)以后职工信息,并按编号升序排序 Select from rsgl where Year (出生日期)1960 order by 编号 Ascend15、计算Rsgl表中所有职工工资的总和 Select Sum(工资) from rsgl 16、结构化程序设计采用的主要方法是 自顶向下设计 和 模块化和层次化 17、CLEARINPUT “输入A的值:” TO AIF A=0B=A ELSE B=-AENDIFA, “的绝对值是:”, BR
18、ETURN18、对象相对引用时常用的关键字是 this 和 thisform 。19、表单运行时被触发的第一个事件是load ,当*对象获得焦点时触发其 gotfouse 事件。20、 Enabled属性的作用是 使当前控件生效或失效 。21、填充下列程序中缺失的语句I=0 J=0 K=1Do while k=2000”。第五步,执行查询。单击右键在弹出的快捷菜单中选择“运行查询”命令,显示查询结果。四、程序设计题 1、从键盘上任意输入一个数给*,根据*的值按不同的表达式计算,并输出计算结果,该表达式如下:Y=2*+5 * 10Y=10*-5 * 5Y=100 *为其它值2、输入一个字符串(假
19、设没有汉字),要求分别统计出其中英文字母、空格、数字和其他字符的个数。参考答案:1、CLEARINPUT “请输入一个数:” TO *IF *10 y=2*+5ELSE IF *=aand ch=A and ch=0 and ch30 .AND. 工资1500 .AND. 工资30 .AND. 工资1500 .AND. 工资30 .AND. 工资1500 .OR. 工资30 .AND. 工资1500 .OR. 工资18004、( C )下面关于事件的叙述正确的是A. 对象的每个事件只有一种触发形式B. 系统事件发生的顺序是随机的C. 一个对象有多个事件,一个事件可以由多种形式触发D. 表单第一
20、个被触发的事件是Init事二、填空题1、计时器控件工作的三要素是Timer事件、Interval属性、Enabled属性2、*表有4个字段,其中第一个字段是字符型,宽度为6,第二个字段是数值型,整数位为3,小数位为1,其余两个字段分别是逻辑型、日期型,则该表记录长度为 21 3、LEN(SPACE(4)+“*大学”+ SPACE(4)= 16 4、控件的数据绑定是指将控件与*个对象联系起来。5、为了将表单从内存中释放,可将表单中“退出”命令按钮的Click事件代码设置为:Thisform .release 。6、程序的三个基本结构是顺序结构、分支结构和 循环结构 。7、用二维表形式表示的数据模
21、型是 关系模型 。8、两个表建立关联后,当父表记录指针移动时,子表记录指针 自动移到到满足关联条件的记录上 。9、*索引类型只能用在数据库表中,且用来创建该种索引的字段不允许有重复值,一个表中只能有一个这样的索引,这种索引称为 主索引 。10、假设*表共有10个记录,执行SKIP 20命令后,此时EOF函数值为 .T. 。11、列表显示Rsgl表中已婚的女教授的*、出生日期和工资。 List fields *,出生日期,工资 for 性别=“女” .and.已婚 12、统计Rsgl表中1960年以前出生的副教授的人数。 SELECT count(编号) from RSGL where 职务=“
22、副教授”13、给所有职务工资在200元以下(不包括200元)的职工基本工资增加100元。 Replace all 基本工资 with 基本工资+100 for 职务工资200 14、创建一个表sb,其结构为(编号 C 5,名称 C 10,价格 N 9,2,主要设备 L) Create table sb(编号 c(5),名称 c(10),价格 N(9,2),主要设备 L) 15、删除Rsgz表中的“*”字段Alter table Rsgl drop * 16、在参照完整性的更新规则中,“级联”的含义是: 更改父表关键字值时,子表相关记录的值自动更改 17、给MyForm表单中控件cmd1的Cap
23、tion属性赋值为“下一页”Myform .cmd1 .caption=”下一页”18、用于确定对象位置和大小的属性是 eft 和 top 、 height 和 width 19、对象事件的触发方式有 用户触发 和 系统触发、代码触发 。20、下列程序用于逐个显示Rsgl表中教授们的信息:USE RsglDo while .not. eof() IF 职称=“教授” DISPLAY ENDIF SKIP ENDDOUSE21、下列程序要求逐次单击表单,画上或擦去一个圆。Form1的Load事件中代码如下:Public I, c* ,cy i=.T.STORE 0 TO c*, cyForm1的
24、Click事件中代码如下: IF iThisform .circle(5 ,c*+5 ,cy+5) i=.F. ELSE ThisForm.CLSI=.t. ENDIF三、简答及描述题1、什么是数据库管理系统.它由哪些部分组成.2、什么是项目.项目管理器一般包含哪些内容.参考答案:1、数据库管理系统是数据库系统的核心,是为建立、使用和维护数据库而配置的软件,它建立在操作系统之上,位于操作系统和应用程序之间,负责对数据库中数据进行统一管理和控制。数据库管理系统通常由四部分组成。(1)数据定义语言,用以定义数据库的概念模式、存储模式和外模式以及各模式间的映射和完整性约束。(2)数据操纵语言,用以数
25、据库的检索、输入、修改、删除等的基本操作。(3)数据控制语言,以便让用户根据需要控制和管理数据库系统。(4)实用程序,包括数据初始装入程序、数据转储程序、数据库恢复程序、性能测试程序、数据库再组织程序、数据转换程序、通信程序等。2、一个VFP数据库应用程序,是有若干个不同类型、不同格式的文件构成,它们共同构成一个项目,这些文件统称为该项目的项目文件。VFP的项目管理器是一个专门对这些文件进行有效管理的项目集成管理工具。项目管理器由六个选项卡组成,包含了应用系统的所有组成部分。(1)“全部”选项卡,包括其他五个选项卡的所有内容。(2)“数据”选项卡,主要用于显示和管理数据文件。包含的数据文件有:
26、数据库、自由表、查询、连接、存储过程文件等。(3)“文档”选项卡,主要用于显示和管理文档。它包含了数据处理所需要的文档,用于输入和查看数据的表单、打印报表和标签等。(4)“类” 选项卡,主要用于显示和管理类库文件。(5)“代码” 选项卡,主要用于显示和管理VFP各种类型的程序代码,包括三种程序:程序、API库和应用程序。(6)“其他”选项卡,主要用于管理菜单文件、文本文件和其他文件。四、程序设计题 1、将1100之间能被5或6整除的数显示出来、统计个数并求和。2、*厂在三八妇女节时,给每位女职工按工资的45%发放奖金,其中职称为高工的已婚妇女再多加上100元。请编程完成这一功能。该厂职工人员表
27、(ZGRY.DBF)的结构有:*(C,10),出生日期(D),性别(C,2),职称(C,8),婚否(L),工资(N,8,2),奖金(N,7,2)、简历(M),3、创建如下所示用户登录表单,单击“登录”按钮,当用户名和密码输入正确时,显示“欢迎进入本系统”,否则显示“密码或用户名错误”;单击“退出”按钮时显示“退出系统”。参考答案:1、CLEAR STORE 0 TO S, T FOR I=1 TO 100 IF INT(I/5)=I/5 OR INT(I/6)=I/6 I S=S+I T=T+1 ENDIFENDFOR” 1100之间能被5或6整除的数有”+STR(T,2)+”个, ”其和是:
28、”, S2、CLEAR USE ZGRY REPLACE ALL 奖金 WITH 工资*0.45 FOR 性别=”女” GO TOP DO WHILE NOT EOF( ) IF 性别=”女” AND 职称=”高工” AND 婚否 REPLACE 工资 WITH 工资+100 ENDIF SKIP ENDDO LIST FOR 性别=”女” USE3、(1)创建表单打开表单设计器,在上面建立两个标签,两个文本框和两个命令按钮。(2)控件属性设置对象属性名属性值表单form1Caption登录标签label1Caption请输入用户名标签label2Caption请输入口令文本框Namet*tP
29、asswordPasswordChar*文本框Namet*tName命令按钮NamecmdLoginCaption登录命令按钮NamecmdE*itCaption退出(3)代码编写命令按钮cmdLogin的Click事件IF ThisForm.t*tName.Value=user AND ThisForm.t*tPassword.Value=12345 MESSAGEBO*(“欢迎进入本系统”)ThisForm.ReleaseELSE MESSAGEBO*(密码或用户名错误)ENDIF命令按钮cmdE*it的Click事件 MESSAGEBO*(退出系统) ThisForm.Release. z.