(1)将customerl表中的全部记录追加到customer表中,然后用SQL SELECT语句完成查询:列出目前有订购单的客户信息(即有对应的order list记录的customer表中的记录),同时要求按“客户号”升序排序,并将结果存储到resul

admin2017-03-29  33

问题 (1)将customerl表中的全部记录追加到customer表中,然后用SQL SELECT语句完成查询:列出目前有订购单的客户信息(即有对应的order list记录的customer表中的记录),同时要求按“客户号”升序排序,并将结果存储到results表中(表结构与customer表结构相同)。
(2)打开并按如下要求修改forml表单文件(最后保存所做的修改)。
①在“确定”命令按钮的Click事件(过程)下的程序有两处错误,请改正。
②设置Text2控件的有关属性,使用户在输入口令时显示“*”(星号)。

选项

答案(1)步骤1:命令窗口执行: SELECT*FROM customerl INTO ARRAY temp INSERT INTO customer FROM ARRAY temp 将customerl表中的记录全部复制到customer表中。 步骤2:在命令窗口执行命令: SELECT DISTINCT Customer.*; &&DISTINCT短语的功能是消除查询结果中相同的记录 FROM 订货管理!customer INNER JOIN 订货管理!order list; ON Customer.客户号=Order list.客户号; ORDER BY Customer.客户号; INTO TABLE results.dbf SQL简单查询;查询的建立与使用。 (2)步骤1:命令窗口执行: MODIFY FORM forml,打开表单设计器修改表单。 步骤2:“确定”按钮的Click事件中代码如下: &&功能:如果用户输入的用户名和口令一致,则在提示信息后关闭该表单 &&否则重新输入用户名和口令 ********ERROR******************* IF THISFORM.TEXTl=THI:SFORM.TEXT2 WAIT"欢迎使用……"WINDOW TIMEOUT 1 *******ERROR******************* THISFORM.CLOSE ELSE WAIT"用户名或口令不对,请重新输入……"WINDOW TIMEOUT 1 ENDIF 修改后的代码如下: IF THISFORM.TEXTl.VALUE=THISFORM. TEXT2.VALUE && 原代码语句中缺少指定VALUE属性 WAIT"欢迎使用……"WINDOW TIMEOUT 1 THISFORM*RELEASE && 关闭表单的短语是 RELEASE.而不是CLOSE ELSE WAIT"用户名或口令不对,请重新输入……"WINDOW TIMEOUT 1 ENDIF 步骤3:修改文本框( TEXT2)控件PasswordChar属性值为:*。 步骤4:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。 表单的事件、方法和属性;基本型控件。

解析 (1)本题考查SQL联接查询。Customer(客户表)和Order_list(订单表)的联接条件为两个表中“客户号”相等的记录,表示在Customer表中的客户在Order_list表中有订购记录:由于一个客户可能对应多条订购记录,需要使用DISTINCT短语消除结果中重复的记录。
排序用ORDER BY,降序为DESC,默认升序(ASC),将查询结果保存到表中使用INTO TABLE短语。还可以通过查询设计器中生成SQL代码。
(2)本题主要考查了表单属性及方法。文本框中显示的数据值可通过Value属性获得,本题源程序中,第一处错误是缺少该属性。例如,“THISFORM.TEXT1”只能表示表单中的一个控件。第二处错误是对表单常用方法的考查。用来释放和关闭表单的方法是Release,而并非Close。
转载请注明原文地址:https://kaotiyun.com/show/VYIp777K
0

最新回复(0)