上机测试1答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、项目、数据库和表操作(12分)

打开软盘根目录中的项目文件TEST,在该项目中已有一数据库SJK及若干表。

1. 按以下要求修改SJK数据库中TS表:

(1)为TS表设置长表名:图书档案表。

(2)添加一备注型字段,字段名为summary,并设置其标题为“内容概要”。

(3)设置分类号(flh)字段的有关属性(格式!),使该字段中输入的字母均为大写字母。

(4)创建一个普通索引abcd,要求以分类号(flh)为第一索引关键字、书名(sm)为第二索引关键字排序。(5)设置价格(jg)字段的有效性规则(jg>=1)和有效性说明信息,要求:“其值不能小于1”。

(6)修改作者(zz)字段的值,要求在原作者名后加汉字“等”。例如,第一条记录的作者由“路由”改为“路由等”。Replace zz with zz-“等” all update ts set zz=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表查询)。

Select kc.kcdh,kc.kcm,avg(cj.cj) as 平均成绩 from kc inner join cj on kc.kcdh=cj.kcdh group by 1 三、设计表单(10分)图1

项目管理器中已经存在表单FA,该表单用来更改用户的密码。根据下列要求修改表单,设计时和运行时的效果分别如图2和图3所示。

1、将文本框控件txtUserName设置为禁用(enabled .f.),并将其与全局内存变量pUserName绑定(controlsource pUserName);

2、将“老密码”文本框控件txtOldPwd的密码占位符(passwordchar)设置为字符“#”;

3、添加一个“重置”命令按钮(如图3所示),对象名(name)为cmdReset,标题(caption)为“重置”;

4、为“重置”按钮设置Click事件代码,要求清除“新密码”和“新密码重复”相应文本框控件的文本值;

Thisform.txtnewpwd1.value=””

Thisform.txtnewpwd2.value=””

5、已知在表单的Init事件代码中已定义了全局变量pPassWord,用来存放已登录用户的密码,完善“确定”按钮的Click事件代码(提示:在原代码中的空行处添加一条语句),要求:当老密码与全局变量pPassWord 的值相等时,检查“新密码”和“新密码重复”相应文本框控件的文本值是否相等,如果相等,则将“新密码”文本框txtNewPwd1的值赋给全局变量pPassWord。

图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表添加一条记录,其记录内容为:

Insert into ts(flh,sm,zz)values(“TP31.15”,” Visual FoxPro实验指导”,”崔建忠等”)

2、在项目中,将XIM表设置为“包含”状态。(项目管理器,选中文件单击右键)

3、XS表和CJ表已存在以学号(xh)字段为索引表达式的主索引xsxh和普通索引cjxh。以XS表为主表,CJ表为子表按xh建立永久关系,并根据以下要求设置参照完整性规则:在XS表中删除记录时,若CJ表中有相对应的记录(xh字段的值),则禁止删除XS表记录。

二、设计菜单(5分)

已知项目TEST中已存在菜单menu,利用菜单设计器,按如

下要求修改菜单。

1、按图1所示要求为“表操作”菜单栏下各子菜单项设置分组线;

2、在“文件”菜单栏下插入一个“退出”菜单项,并编写命令:

当执行该菜单时能关闭VFP系统;quit

图 1

3、为“数据浏览”菜单栏下的“学生”菜单项编写过程代码:当执行该菜单项时,选择学生(XS)表为当前表(若未打开,则首先打开之),并用BROWSE命令浏览学生表。

If used(“xs”)

Select xs

Else

Select 0

Use xs

Endif

Browse

三、设计表单(10分)

项目管理器中已经存在表单FB,该表单用来更改用户的密码。根据下列要求修改表单,设计时和运行时的效果分别如图2和图3所示。

1、设置表单为模式表单(windowstype),背景为白色(backcolor rgb(255,255,255)),并在运行是自动居中(autocenter),

2、设置“确定”控件按钮为禁用(enabled:.F.)。

相关文档
最新文档