③ 拖放Customer表的主索引标志“客户编号”到Order表的普通索引标志“客户编号”上,释放鼠标后,永久联系即已经建立。
2.简单应用题
在考生文件夹下完成如下简单应用:
(1)用SQL语句完成下列操作:列出“林诗因”持有的所有外币名称(取自rate_exchange表)和持有数量(取自currency_s1表),并将检索结果按持有数量升序排序存放于表rate_temp中,同时将所使用的SQL语句存放于新建的文本文件rate.txt中。
(2)使用一对多报表向导建立报表。要求:父表为rate_exchange,子表为currency_s1,从父表中选择字段“外币名称”;从子表中选择全部字段;两个表通过“外币代码”建立联系;按“外币代码”降序排序;报表样式为“经营式”,方向为“横向”,报表标题为“外币持有情况”;生成的报表文件名为currency_report。
【参考答案】
(1)具体步骤如下:
① 在“命令”窗口输入命令:MODIFY COMMAND query,打开程序编辑器,编写如下程序段:
******下面是文件query.prg中的程序段******
SELECT rate_exchange.外币名称,currency_s1.持有数量;
FROM currency_s1 INNER JOIN rate_exchange;
ON currency_s1.外币代码=rate_exchange.外币代码;
WHERE currency_s1.姓名=“林诗因”;
ORDER BY currency_s1.持有数量;
INTO TABLE rate_temp.dbf
****************************************
② 在“命令”窗口输入命令:DO query,执行程序。
(2)具体步骤如下:
① 从“文件”菜单中选择“新建”命令。
② 在弹出的“新建”对话框中选中“报表”单选按钮,然后单击“向导”图标按钮。
③ 系统弹出“向导选取”对话框,在列表框中选择“一对多报表向导”选项,单击“确定”按钮。
④ 系统首先要求选择一对多报表中作为父表的数据表文件。根据题意,选择rate_exchange表作为父表,从“可用字段”列表框中将“rate_exchange.外币名称”字段添加到右边的“选定字段”列表框中,用做父表的可用字段。
⑤ 单击“下一步”按钮设计子表的可用字段,操作方法与父表选取字段的方法一样,将currency_s1表中的所有字段添加到“选定字段”列表框中。
⑥ 单击“下一步”按钮进入“建立表关联”的设计界面,在此处系统已经默认设置好进行关联的字段:父表的“外币代码”和子表的“外币代码”字段。
⑦ 单击“下一步”按钮进入“选择排序方式”的设计界面,将“可用字段或索引标识”列表框中的“外币代码”字段添加到右边的“选定字段”列表框中,并选中“降序”单选按钮。
⑧ 单击“下一步”按钮进入“选择报表样式”的界面,在“样式”列表框中选择“经营式”选项,在“方向”选项组中选择“横向”。
⑨ 单击“下一步”按钮进入最后的“完成”设计界面,在“标题”文本框中输入“外币持有情况”为报表标题,单击“完成”按钮。
⑩ 在系统弹出的“另存为”对话框中,将报表以currency_report为文件名保存在考生文件夹下,退出报表设计向导。
3.综合应用题
建立满足如下要求的应用并运行,所有控件的属性必须在表单设计器的属性窗口中设置:
(1)建立一个表单myform(文件名和表单名均为myform),其中包含两个表格控件,第一个表格控件名称是grd1,用于显示表Customer中的记录,第二个表格控件名称是grd2,用于显示与表Customer中当前记录对应的Order表的记录。要求两个表格尺寸相同、水平对齐。
(2)建立一个菜单mymenu,该菜单只有一个菜单项“退出”,该菜单项对应于一个过程,并且含有两条语句,第一条语句是关闭表单myform,第二条语句是将菜单恢复为默认的系统菜单。