《数据库原理及其应用》模拟题1一、选择题1、(D)在下列表达式中,计算结果为字符型的是:A.1234+ASC(“A”)B.SQRT(4)*12/24/60C.CTOD(“12/24/94”)DATA()D.“2.13”+SUBSTR(“联想汉字操作系统”,5,12)2、(C)关于自由表的叙述,正确的是A.全部是用以前版本的FoxBase建立的表B.可以用VFP建立,但不能把它添加到数据库中C.自由表可以添加到数据库中,数据库表也可以从数据库中移出成为自由表D.自由表可以添加到数据库中,但数据库表不能从数据库中移出成为自由表3、(A)下列选择中都是方法程序的是:A.Cls,setfocus,pset,releaseB.Cls,caption,pset,releaseC.Cls,refresh,release,initD.Setfocus,getfocus,lostfocus,cls4、(C)查询设计器包括的选项卡有A.字段、条件、分组依据B.联接、杂项、索引C.筛选、排序依据、字段D.排序依据、分组依据、条件二、填空题1、文本框用于数据输入输出的属性是VALUE。2、用于处理文本信息的控件有:文本框、标签、编辑框。3、SQL语言所具有的功能是数据定义、数据操纵、数据控制。4、查询向导中可以有三种选择:查询向导、交叉表格查询、图形向导。5、参照完整性的规则包括插入规则、更新规则、删除规则。6、建立索引的字段值不允许重复,且一个表中只能创建一个,它应该是主索引。7、在数据表中,每一行是关于客观事物的具体描述,叫做元组。8、表结构定义了数据表的字段个数、字段名、字段类型、字段宽度和小数位数等内容。9、日期型常量的一般格式为{yyyy-mm-dd}。10、数据库表中的字段有效性规则用来指定字段的验证性规则。11、数据库系统的组成是数据库、计算机硬件、数据库管理系统、应用程序、用户12、利用SQL语句创建一个表文件,文件名为student,表结构由五个字段组成,分别是xm字符类型,长度为10;xb字符类型,长度为2,默认值为“男”;csrq日期类型;sfty逻辑类型;bz备注类型。13、假设有一个设备管理表sb.dbf,其表结构为:sb(编号C(5),名称C(6),启用日期D,价格N(9,2),部门C(2),主要设备L)在sb表中编号字段值要求唯一。利用SQL语句查询sb表中价格大于10000元的所有主要设备。14、假设由一个设备管理表sb,其结构见第15题。还有一个设备大修表dx.dbf,其表结构为:dx(编号C(5),费用N(6,1)),每台设备大修一次,就作为一条记录保存在dx表中,因此一台设备在dx表中可能有多条记录,即维修过多次。利用SQL语句查找设备编号为106-1的设备的大修费用及其设备名称,并按费用降序排列。15、利用SQL语句查询设备管理表sb中的部门数。16、对象事件是指。三、简答及描述题1、举例说明五种VFP数据类型的特点。2、建立一个名为“studbc”的数据库。在该数据库中建立如下数据表,名为studbf,结构为studbf(学号C7,姓名C8,性别C2,年龄N2,照片G)学号姓名性别年龄照片2005101李明男192005102孙丽女18……每个记录的照片字段内都存有照片。写出详细的建立过程。3、如何设置“默认”命令按钮?如何设置图文按钮?举例说明如何设置命令按钮的访问键。参考答案:1、(1)字符型字符型数据可以包含字母、数字、空格、汉字和符号。如“SDFG”、“12345”、“计算机”为字符型常量。姓名、性别、家庭住址都是用汉字表示的,他们的数据类型也是字符型的。在内存中一个字符占用一个字节,一个汉字占用两个字节。(2)数值型数值型数据是由0~9、小数点及正负号组成。如234.7、-78、12.86。(3)逻辑型这种数据类型表达了一个逻辑值。该逻辑值有两种可能的取值:真(.T.)或假(.F.)。每个逻辑型数据占用1个字节。(4)日期型由年、月、日组成的数据。每个日期型数据长度为8个字节。例如2002-07-28。(5)备注型备注型只适用于字段。用来存储较多的文字,例如:个人简历、产品说明、图书简介等都可以定义为备注型。2、第一步,打开表设计器。单击常用工具栏中“新建”按钮-打开“新建”对话框选择“表”单击“新建文件”按打开“创建”对话框输入表文件名:studbf单击“保存”按钮打开表设计器。第二步,创建表结构。在“字段名”处输入“学号”,“类型”选“字符型”,宽度输入7;同样操作输入姓名、性别、年龄、照片四个字段名,并分别定义其类型和宽度。第三步,建立完毕,单击“确定”按钮,在弹出的“现在输入数据记录吗?”提示对话框中单击“是”按钮。第四步,输入记录数据。在打开的记录编辑窗口中输入第一个记录的第一个字段值“2005101”,依次输入“李明”,“男”,19,三个字段值。光标移到“照片”字段编辑框,双击该编辑框,打开“照片”字段编辑窗口。单击“编辑”菜单“插入对象”命令,打开“插入对象”对话框,选择“由文件创建”单选钮,找到照片文件添加到“照片”字段里。同样操作完成所有的记录输入。第五步,退出记录编辑窗口后,在VFP的命令窗口中输入USE命令,回车,保存studbf文件到磁盘中。3、若表单上有多于一个的命令按钮,可将其中一个设定为默认命令按钮,方法是该命令按钮的Default属性赋值为.T.。每个表单上有且只有一个命令按钮为默认按钮。当一个命令按钮设置为默认按钮后(其Enabled属性必须为.T.),同一表单上的其他命令按钮的Default属性将自动变为.F.。使命令按钮的Caption属性和Picture属性都赋上相应的值则可将该命令按钮设置为图文按钮。命令按钮的访问键设置方法是:在Caption属性值中作为访问键的字母前加上“\”两个符号,显示时该字母下方有一条下划线,这个字母就成了访问键。当表单运行时,按Alt+访问键后,焦点马上移到这个命令按钮上。例如将某个命令按钮的Caption属性中赋值为“退出(\E)”,则这个命令按钮的访问键就是字母e键。四、程序设计题1、输入一个整数,当为偶数时,求其立方;当为奇数时,求其平方。2、设计一个输入用户密码的表单,界面如下。输入密码时在文本框中显示“*”,密码错误时显示“密码错,请重新输入!”,三次输入不正确时显示“对不起,你不是合法用户!”后结束表单运行;输入正确密码后显示“密码正确!可以进入系统。”,然后结束表单运行。参考答案:1、CLEARINPUT“请输入一个数:”TOxIFx%2=0或INT(x/2)=X/2y=x**3?”该数是偶数,其立方为:”,yELSEy=x**2?”该数是奇数,其平方为:”,yENDIF2、第一步,创建一个表单,然后在其中创建标签和文本框各一个,命令按钮二个。第二步,属性设置控件属性属性值label1Caption密码:text1PasswordChar*Value(清空)Command1Caption确定Command2Caption取消第三步,程序编写Form1的Load事件:PUBLICii=0Command1的Click事件:i=i+1IFTHISFORM.Text1.Value=”123456”MESSAGEBOX(“密码正确!可以进入系统。”)THISFORM.RLEASEELSEIFi3MESSAGEBOX(“密码错,请重新输入!”)THISFORM.text1.VALUE=””THISFORM.text1.SETFOCUSELSEMESSAGEBOX(“对不起,你不是合法用户!”)THISFORM.RELEASEENDIFENDIFCommand2的Click事件:THISFORM.RELEASE《数据库原理及其应用》模拟题2本试卷用到的表及其结构为:Rsgl表(编号C,姓名C,性别C,出生日期D,职称C,工资N(7,2),婚否L)一、选择题1、(A)数据库管理系统的四个组成部分,包括数据定义语言、数据操纵语言、实用程序和A.数据控制语言B.数据执行语言C.数据管理语言D.数据形式语言2、(C)下列关于范围子句的说法正确的是A.所有带有范围子句的命令的默认范围都是ALLB.NEXTn只对从当前记录开始的以下n个记录进行操作C.RECORDn对n个记录进行操作D.范围子句一般有三种选择:ALL,NEXTn,RECORDn3、(A)用List命令显示当前表中1990年以后(不包括1990年)工作的男同志,且只显示姓名、工作时间和工资三个字段。A.LISTFORYEAR(工作时间)1990AND性别=”男”FIELDS姓名,工作时间,工资B.LISTFIELDS姓名,工作时间,工资FOR工作时间1990AND性别=男C.LISTFIELDS姓名,工作时间,工资FOR1990AND男D.LISTFIELDS姓名,工作时间,工资FORYEAR(工作时间)=1990AND性别=”男”4、(C)为student表增加一个字段xf,要求该字段大于零,SQL语句是A.ALTERTABLEstudentADDxfC(3)CHEAKxf0B.CREATETABLEstudentADDxfN(3)CHECKxf0C.ALTERTABLEstudentADDxfN(3)CHECKxf0D.DROPTABLEstudentADDxfN(3)CHEAKxf0四、程序设计题1、从键盘上任意输入一个数给X,根据X的值按不同的表达式计算,并输出计算结果,该表达式如下:Y=2X+5X〉10Y=10X-5X〈5Y=100X为其它值2、输入一个字符串(假设没有汉字),要求分别统计出其中英文字母、空格、数字和其他字符的个数。参考答案:1、CLEARINPUT“请输入一个数:”TOxIFx10y=2*x+5ELSEIFx5y=10*x-5ELSEy=100ENDIFENDIF?”Y=”,y分支结构也可以用DOCASE2、clearstore0toxz,xs,xk,xqaccept请输入字符串:tochrrfori=1tolen(chrr)ch=subs(chrr,i,1)docasecasech=‘a’andch=‘z’orch=‘A’andch=‘Z’xz=xz+1casech=”“或ch=space(1)xk=xk+1casech=0andch=9xs=xs+1otherxq=xq+1endcasenext?这个字符串中总的字符个数是:,len(chrr)?其中字母个数是:,xz?空格数是:,xk?数字个数是:,xs?其他字符的个数是:,xq《数据库原理及其应用》模拟题3试题中所涉及的表及其结构是:Rsgl表(编号C,姓名C,性别C,出生日期D,职称C,工资N(7,2),婚否L)Rsgz表(编号C,姓名C,基本工资N(7,2),职务工资N(6,2),公积金N(6,2),应发工资N(7,2),实发工资N(7,2))一、选择题1、(C)关于备注型字段下列说法正确的是:A.能接受任意类型数据B.字段宽度根据实际数据设定C.存放在与表的主名相同、后缀为FPT的文件中D.不与通用型字段数据存放在一起2、(A)下列选择中都是方法程序的是:A.Cls,setfocus,pset,releaseB.Cls,caption,pset,releaseC.Cls,refresh,release,initD.Setfocus,getfocus,lostfocus,cls3、(B)设字段工作日期为日期型,工资为数值型,则要想表达工龄大于30年,工资高于1500、低于1800元这一命题,其表达式是:A.工龄30.AND.工资1500.AND.工资1800B.INT((DATE()-工作日期)/365)30.AND.工资1500.AND.工资1800C.工龄30.AND.工资1500.OR.工资1800D.INT(DATE()–工作日期/365)30.AND.工资15