一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
在考生目录下完成如下操作:
1. 打开"订货管理"数据库,并将表order_detail添加到该数据库中。
2. 为表order_detail的"单价"字段定义默认值为NULL。
3. 为表order_detail的"单价"字段定义约束规则:单价 > 0 ,违背规则时的提示信息是:"单价必须大于零"。
4. 关闭"订货管理"数据库,然后建立自由表customer,表结构如下:
客户号 字符型(6)
客户名 字符型(16)
地址 字符型(20)
电话 字符型(14)
解答:
1.使用菜单方法,也可以直接使用命令:
open database 订货管理
add table order_detail
2.order_detail表的单价设置空值:首先打开表设计器,选择“单价”字段,在NULL列选中(出现√),在默认值框中输入.null.(如下图)。
3.设置有效性规则:打开表设计器,选择需设置的字段,在“字段有效性”组框中设置(如上图),在“规则”框中输入约束条件,在“信息”框中输入提示信息(注意提示信息必须用定界符括起来)。
4.新建自由表时,可先使用命令CLOSE ALL DATABASE关闭数据库,再用菜单或命令的方法建立,可参考前几套试题,此处略。 二、简单应用(2小题,每题20分,计40分)
在考生目录下完成如下简单应用:
1. 列出总金额大于所有订购单总金额平均值的订购单(order_list)清单按客户号升序排列),并将结果存储到results表中(表结构与order_list表结构相同)。
解答:
本题用查询设计器不太有效(借助多次查询也是也可以),比较有效的办法是使用SQL语句,命令如下:
SELECT * FROM order_list WHERE 总金额>(SELECT AVG(总金额) FROM order_list ) ORDER BY Order_list.客户号 INTO TABLE results.dbf
也可以使用一般的命令:
USE order_list
AVERAGE 总金额 TO ABC
Sort on 客户号 to results FOR总金额 > ABC
2. 利用Visual Foxpro的"快速报表"功能建立一个满足如下要求的简单报表:
(1) 报表的内容是order_detail表的记录(全部记录,横向);
(2) 增加"标题带区",然后在该带区中放置一个标签控件,该标签控件显示报表的标题"器件清单";
(3) 将页注脚区默认显示的当前日期改为显示当前的时间;
(4) 最后将建立的报表保存为report1.frx。
解答:
方法1:利用快速报表建立报表:单击“文件”菜单下“新建”命令,在打开的“新建”对话框中选定“报表”,单击“新建文件”按钮,输入报表文件名,进入到“报表设计器”,再从“报表”菜单中单击“快速报表”命令,选择表“order_detail”,进入快速报表对话框(如上图),按要求选择字段、标题、横向等,最后在页注脚带区添加一个域控件,显示系统时间(使用time()函数)。
方法2:用向导的方式新建。新建好后,改标题名为“器件清单”,将页标题中当前系统日期移到页注脚,并双击该控件,将显示内容改为系统时间time()。
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |