一、基本操作
注意:基本操作题为4道SQL题,请将每道题的SQL命令粘贴到sqlanswer.txt文件,每条命令占一行,第1道题的命令是第1行,第2道题的命令是第2行,以此类推;如果某道题没有做,相应行为空。
在考生文件夹下完成下列操作:
(1)利用SQL的“SELECT”命令将“share.dbf”复制到“share_bk.dbf”。
(2)利用SQL的“INSERT”命令插入记录("600028",4.36,4.60,5500)到“share_bk.dbf”表。
(3)利用SQL的“UPDATE”命令将“share_bk.dbf表中"股票代码"为“600007”的股票“现价”改为“8.88”。
(4)利用SQL“DELETE”命令删除“share_bk.dbf”表中“股票代码”为600000的记录。
【答案】
(1)SELECT * FROM share INTO table share_bk
(2)INSERT INTO share_bk VALUES("600028",4.36,4.60,5500)
(3)UPDATE share_bk SET 现价=8.88 WHERE 股票代码="600007"
(4)DELETE FROM share_bk WHERE 股票代码="600000"
【解析】
(1)本题考查了表内容复制,可使用SQL的“select”语句及into table tablename来完成。
(2)数据插入的一般SQL语句为:
Insert intotablename [(fieldname1[,fieldname2,…])]values (eExpression1[,eExpression2,…]);
(3)数据更新的一般SQL语句为:
Update[databasename]tablename
Set columnname1=eExpression1[,columnname2=eExpression2…][where filtercondition1[and/or filtercondition2…]];
(4)数据删除的一般SQL语句为:
Delete f
在考生文件夹下的仓库数据库GZ3包括两个表文件:
ZG(仓库号C(4),职工号C(4),工资N(4))
DGD(职工号C(4),供应商号C(4),订购单号C(4),订购日期D,总金额N(10))
在GZ3库中建立“工资文件”数据表:GJ3(职工号C(4),工资N(4)),设计一个名为MEWU3的菜单,菜单中有两个菜单项“查询”和“退出”。程序运行时,单击“查询”应完成下列操作:检索出与供应商S7、S4和S6都有业务联系的职工的“职工号”和“工资”,并按“工资”降序存放到所建立的GJ3文件中。单击“退出”菜单项,程序终止运行。
(注:相关数据文件存在于考生文件夹下)。
【答案】
(1)在命令窗口中输入命令:create menu MEWU3,单击“菜单”图标按钮,如图所示。
(2)按题目要求输入主菜单名称“查询”和“退出”。
(3)在“查询”菜单项的结果下拉列表中选择“过程”,单击“编辑”按钮,在程序编辑窗口中输入:
SET TALK OFF
OPEN DATABASE GZ3
USE DGD
CREATE TABLE GJ3(职工号 C(4),工资 N(4))
SELECT 职工号 FROM DGD WHERE 供应商号 IN("S4","S6","S7");
GROUP BY 职工号;
HAVING COUNT(DISTINCT(供应商号))=3;
INTO CURSOR CurTable
SELECT ZG.职工号,工资 FROM ZG,CurTable WHERE ZG.职工号=CurTable.职工号;
ORDER BY 工资 DESC;
INTO ARRAY AFieldsValue
INSERT INTO GJ3 FROM ARRAY AFieldsValue
CLOSE ALL
SET TALK ON
(4)在“退出”菜单项的结果下拉列表中选择“命令”,在命令编辑窗口中输入:set sysmenu to default。
(5)选择Visual FoxPro主窗口中的“菜单”→“生成”菜单命令。
【解析】
本题考查菜单的建立与功能设计。菜单的建立一般在菜单设计器中进行。使用命令create menu menuname新建菜单,并打开菜单设计器。在设计过程中注意菜单项结果的选择,一般可以选择“过程”、“命令”或“子菜单”等。
“过程”用于输入多行命令。
“命令”用于输入单行命令。
“子菜单”用来建立下级菜单。
本题考查的另一知识点是使用命令方式建立多表SQL语句查询。新建表的SQL命令格式为:
CREATE TABLE TABLENAME (COLUMNNAME1 DATAFORMAT (WIDTH)…)
将查询结果输入表中的命令格式为:
insert into tablename
在对表查询的SQL语句中,可能先将查询结果放在临时表或数组中,再从数组中输入表。
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |