上机测试1答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1一、项目、数据库和表操作(12分)打开软盘根目录中的项目文件TEST,在该项目中已有一数据库SJK及若干表。1.按以下要求修改SJK数据库中TS表:(1)为TS表设置长表名:图书档案表。(2)添加一备注型字段,字段名为summary,并设置其标题为“内容概要”。(3)设置分类号(flh)字段的有关属性(格式!),使该字段中输入的字母均为大写字母。(4)创建一个普通索引abcd,要求以分类号(flh)为第一索引关键字、书名(sm)为第二索引关键字排序。(5)设置价格(jg)字段的有效性规则(jg=1)和有效性说明信息,要求:“其值不能小于1”。(6)修改作者(zz)字段的值,要求在原作者名后加汉字“等”。例如,第一条记录的作者由“路由”改为“路由等”。Replacezzwithzz-“等”allupdatetssetzz=zz-“等”2.在项目中,将FF表单设置为“排除”状态。3.XS表和CJ表已存在以学号(xh)字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:在CJ表中添加记录时,若XS表中没有相对应的记录(xh字段的值),则禁止添加记录。(插入规则:限制)二、设计菜单(5分)已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。1、按图1所示要求为“表操作”菜单栏下的“添加记录”菜单项增加子菜单,为“表操作”菜单栏下的各菜单项设置分组线(\-);2、在“文件”菜单栏下插入VFP系统菜单项“退出”;3、为“数据查询”菜单栏下的“课程”菜单项编写SQL命令:当执行该菜单时,在浏览窗口显示kcdh、kcm及平均成绩(注:根据KC表及CJ表查询)。Selectkc.kcdh,kc.kcm,avg(cj.cj)as平均成绩fromkcinnerjoincjonkc.kcdh=cj.kcdhgroupby1三、设计表单(10分)图1项目管理器中已经存在表单FA,该表单用来更改用户的密码。根据下列要求修改表单,设计时和运行时的效果分别如图2和图3所示。1、将文本框控件txtUserName设置为禁用(enabled.f.),并将其与全局内存变量pUserName绑定(controlsourcepUserName);2、将“老密码”文本框控件txtOldPwd的密码占位符(passwordchar)设置为字符“#”;3、添加一个“重置”命令按钮(如图3所示),对象名(name)为cmdReset,标题(caption)为“重置”;4、为“重置”按钮设置Click事件代码,要求清除“新密码”和“新密码重复”相应文本框控件的文本值;Thisform.txtnewpwd1.value=””Thisform.txtnewpwd2.value=””5、已知在表单的Init事件代码中已定义了全局变量pPassWord,用来存放已登录用户的密码,完善“确定”按钮的Click事件代码(提示:在原代码中的空行处添加一条语句),要求:当老密码与全局变量pPassWord的值相等时,检查“新密码”和“新密码重复”相应文本框控件的文本值是否相等,如果相等,则将“新密码”文本框txtNewPwd1的值赋给全局变量pPassWord。2图2设计时图3运行时一、项目、数据库和表操作(12分)打开软盘根目录中的项目文件TEST,在该项目中已有一数据库SJK及若干表。1.按以下要求修改SJK数据库中TS表:(1)为TS表设置表注释:教学用图书。(2)添加一个字段,字段名为cover,其类型应适用于存储图书的封面图片(通用型)。(3)设置分类号(flh)字段的有关属性(显示格式:!),使该字段中输入的字母均为大写字母。(4)设置册数(cs)字段的有关属性,使得将该字段从表单的数据环境中拖放到表单上时,生成的相应控件为微调控件。显示类:spinner(5)创建一个普通索引abcd,要求以书名(sm)的长度进行排序(sm字段值的首尾空格字符不计)。Len(alltrim(sm))(6)设置书名(sm)字段的有效性规则:其值不能为空字符串,或仅有空格组成的字符串,相应的有效性说明为“书名不能为空”。!empty(“sm”)!isblank(“sm”)len(alltrim(sm))0(7)为TS表添加一条记录,其记录内容为:FLHSMZZTP31.15VisualFoxPro实验指导崔建忠等Insertintots(flh,sm,zz)values(“TP31.15”,”VisualFoxPro实验指导”,”崔建忠等”)2、在项目中,将XIM表设置为“包含”状态。(项目管理器,选中文件单击右键)3、XS表和CJ表已存在以学号(xh)字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:在XS表中删除记录时,若CJ表中有相对应的记录(xh字段的值),则禁止删除XS表记录。二、设计菜单(5分)已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。1、按图1所示要求为“表操作”菜单栏下各子菜单项设置分组线;2、在“文件”菜单栏下插入一个“退出”菜单项,并编写命令:当执行该菜单时能关闭VFP系统;quit图13、为“数据浏览”菜单栏下的“学生”菜单项编写过程代码:当执行该菜单项时,选择学生(XS)表为当前表(若未打开,则首先打开之),并用BROWSE命令浏览学生表。Ifused(“xs”)SelectxsElseSelect0UsexsEndifBrowse三、设计表单(10分)项目管理器中已经存在表单FB,该表单用来更改用户的密码。根据下列要求修改表单,设计时和运行时的效果分别如图2和图3所示。1、设置表单为模式表单(windowstype),背景为白色(backcolorrgb(255,255,255)),并在运行是自动居中(autocenter),2、设置“确定”控件按钮为禁用(enabled:.F.)。33、添加一个图象控件,并指定显示的图象(picture)为Lock.jpg文件所存图象。4、完善“重复新密码”文本框控件txtNewB的InterActiveChange事件代码(提示:在原代码中的空行处添加适当的代码),要求:用IF结构语句判断文本框“新密码”和“重复新密码”的值是否一致,如果一致,则启用“确定”命令按钮,否则禁用“确定”命令按钮。Thisform.command.enabled=.t.5、编写“确定”命令按钮的相关事件代码,使得单击该按钮时,将“txtNewA”文本框的值赋给给变量pPassWord。Ppassword=Thisform.txtnewa.value图2设计时图3运行时一、项目、数据库和表操作(12分)打开软盘根目录中的项目文件TEST,在该项目中已有一数据库SJK及若干表。1.按以下要求修改SJK数据库中TS表:(1)为TS表设置编辑说明:教学图书表。(项目管理器,选中TS单击右键)(2)修改价格(jg)字段的宽度,要求该字段最多能存储整数3位、小数1位。(宽度:5,小数:1)(3)设置作者(zz)字段的标题属性,使该字段的字段名在浏览窗口中显示为“作者”。(4)创建一个普通索引abcd,要求以入库日期(rkrq)字段进行排序,相同时以价格(jg)字段排序。Dtoc(rkrq)+str(jg,5,1)(5)设置价格(jg)字段的有效性规则,要求:其值不能小于1。(jg=1)(6)将分类号(flh)以G字母开头的记录彻底删除。Deleforleft(flh,1)=”G”pack2、在项目中管理器删除XIM表。(移去)3、将图标文件NET.ICO添加到项目中的合适位置(其他选项卡),并修改项目TEST的项目信息:附加图标NET.ICO。4、XS表和CJ表已存在以学号(xh)字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:在XS表中删除记录时,若CJ表中有相对应的记录(xh字段的值),则同时删除CJ表相应记录。(删除规则:级联)二、设计菜单(5分)已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。1、按图1所示要求为“表操作”菜单栏下的“添加记录”菜单项增加一个子菜单(分组线);2、在“添加记录”菜单栏下的“课程”添加过程代码;图1当执行该菜单项时,选择课程表(KC)为当前使用表(若该表未打开,则首先打开之),并在课程表中添加一条空指令。Ifused(“kc”)SelectkcElseSelect04UsekcEndifAppendblank3、为“文件”菜单栏下插入VFP系统菜单项“另存为”。三、设计表单(10分)项目管理器中已经存在表单FC。根据下列要求修改表单,设计时和运行时的效果分别如图2和图3所示。1、将微调框控件spnWidth的Value属性值设置为300,最大和最小值分别设置为600和200。KeyboardhighvaluespinnerhighvalueKeyboardlowvaluespinnerlowvalue2、创建表单集(表单-创建表单集),并在表单集中填假第二个表单Form2;(表单-添加表单)3、为表单集添加新的方法程序(表单-新建方法程序):SetSize,并编写方法程序代码,要求能奖第二个表单Form2的宽度和高度设置为第一个表单Form1中微调框控件spnWidth和spnHeight的值;Thisformset.form2.width=thisformset.form1.spnwidth.valueThisformset.form2.height=thisformset.form1.spnheight.value4、编写spnWidth控件和spnHeigh控件的InterActiveChange事件代码,在代码中调用表单集的SetSize方法:thisformset.setsize图2设计时图3运行时5一、项目、数据库和表操作(12分)打开软盘根目录中的项目文件TEST,在该项目中已有一数据库SJK及若干表。1.按以下要求修改SJK数据库中TS表:(1)设置表的触发器:当册数(cs)不为0时,禁止删除。(删除触发器:Cs=0)(2)添加一个字段,字段名为publisher,宽度以最多能存储“外语教学与研究出版社”字符串为准(宽度:20),并为其设置默认值“出版社”(3)设置国际标准图书编号(isbn)字段的标题属性,使该字段的字段名在浏览窗口中显示为“国际标准图书编号”。(4)创建一个普通索引abcd,要求册数(cs)字段进行排序,相同时以价格(jg)字段排序。Str(cs)+str(jg,5,2)(5)设置rkrp字段的有效性规则,要求不超过当前系统日期。Rkrq=date()2、将GZ表中qt字段的值全部设置为0replaceqtwith0all3、修改项目TEST的项目信息:附加图标NET.ICO。(“项目”菜单选择“项目信息”)4、XS表和CJ表已存在以学号(xh)字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:在XS表中修改和删除记录时,若CJ表中有相对应的记录(xh字段的值),则同时修改和删除CJ表相应记录。二、设计菜单(5分)已知项目TEST中已存在菜单menu,利用菜单设计器,按如下要求修改菜单。1、按图1所示要求为“表操作”菜单栏前增加一个“编辑”菜单栏及其子菜单,并为“教师”菜单设置访问键(\J):2、在“编辑”菜单栏下的“学生”菜单项添加过程代码;当执行该菜单项时,选择学生表(XS)为当前使用表(若该表未打开,则首先打开之),并逻辑删除学生表中xh前二位为“00”的记录。图1Ifused(“xs”)SelectxsElseSelect0UsexsEndifD

1 / 6
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功