操作提示与参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一套
项目,数据库和表操作(12分)
打开素材项目文件JXGL,在该项目中已有一数据库JXSJ。
1、在JXSJ数据库中按如下表格中所示的结构创建AB01.DBF表,并按表格中的要求设置相关属件。
字段名 数据类型 宽度 字段标题 RQ D 日期
PM C 20 品名
DW C 10 单位
DJ N 5(小数1位) 单价 (1)设置表的注释:蔬菜批发价格表
(2)设置RQ字段的默认值: 当前系统日期
(3)设置dw字段的显示类:选项按钮组;
提示:操作界面如下:dw 字段的属性设置:显示类
(4)设置表的更新触发器:日期字段的值等于当前系统日期时允许更新 提示: 更新触发器规则:rq=date()
(5)创建普通索引,索引名abcd,要求按照日期排序,日期相同时按照单价排序 (提示:索引表达式为:DTOC(RQ,1)+ STR(DJ,5,1))
2、在AB01表中输入如下记录;
RQ PM DW DJ 2010-5-15 青菜 公斤 2.4
3、为项目设置项目信息:项目的图标为pc.ico文件
提示:右击项目管理器----项目信息--- 选择 “附加图标”
4、已知KC表已存在主索引KCDM,索引表达式为KCDM;CJ表已
存在普通索引KCDM, 索引表达式为KCDM, 以KC表为主表, CJ
表为子表, 按KCDM建立永久关系, 并设置两表之间的参照完整性:
删除级联、插入限制
设计查询(8分)
已知自由表图书表(TSB)含有分类号(flh,C)、册数(cs、N)、价格(jg,N)等字段。按入校要求修改jxgl项目中的chaxunA:
基于tsb表查询图书类别,藏书册数等信息。要求:查询输出字段为图书类别、藏书册数和平均单价:查询结果按照藏书册数降序排序,相同时按平均单价升序排序:输出去向为文本文件temp1
注意:图书类别为flh字段中“.”前面的内容,如TP31.18 的图书类别为TP31 提示:下面是图书表tsb的数据
操作提示:
输出的字段:left(Tsb.flh,AT(".",Tsb.flh)-1) as 图书类别
sum(Tsb.cs) AS 藏书册数
AVG(Tsb.jg) as 平均单价
分组依据:图书类别
Sql语句:
SELECT left(Tsb.flh,AT(".",Tsb.flh)-1) as 图书类别,;
sum(Tsb.cs) AS 藏书册数, AVG(Tsb.jg) as 平均单价;
FROM tsb;
GROUP BY 1;
ORDER BY 2 DESC, 3;
TO FILE temp1.txt
三、设计菜单(5分)
JXGL项目中已存在菜单MENUA,其中已定义了"文件"菜单栏及其中的"退出菜单"项。按如下要求设计菜单,完成后的运行效果如图1所示。
操作提示: 分组线用\-表示
系统菜单“全部关闭”,利用“插入栏”创建
操作提示:
1、表格的属性设置为:
Readonly=.T.
SCROLLBARS=0
利用生成器,将“组别”一列移走
3、public sGROUP
sCROUP="A"
4、sGROUP=THIS.V ALUE
SELECT FIFA
SET FILTER TO 组别=sGRoup
go top
thisform.refresh
1.将下列程序输入到项目中的程序文件PCODE1中,并对其中的2条错误语句进行修改;
2.在修改程序时,不允许修改程序的总体框架和算法,不允许增加或减少语句数目。 clear
store 0 to n,n1,n2
for i=1000 to 2000
s=allt(str(i))
n1=len(s) && 回文数的总长度
n2=int(n1/2) &&回文数的总长度的1/2
sl=""
for j=1 to n2
sl=sl+right(s,1) && sl 表示回文数的反向右半部分,例如“1221”中的‘12’
s=left(s,n1-1) && 提示:改为j
endfor
if left(s,n1)=sl &&此处可以改为n2,也可以不改,因为是不精确匹配
n=n+1
?? i
if int(n/5)=n/5
?
endif
endfor && 提示:改为endif
endfor
第二套:
项目,数据库和表操作(12分)
打开素材项目文件JXGL,在该项目中已有一数据库JXSJ。
1、在JXSJ数据库中按如下表格中所示的结构创建AB02.DBF表,并按表格中的要求设置相关属件。
字段名数据类型宽度字段标题
PM C 20 片名
Yz C 10 语种
Sc N 3 时长
rkRQ D 入库日期
设置表的注释:影视记录
(2)设置片名字段的格式:删除字段的前导空格
(3)设置yz字段的显示类:列表框(Listbox);
(4)设置时长字段的有效性规则:大于或等于30
(5) 创建普通索引,索引名abcd,要求按照语种排序,语种相同时按照时长排序
(提示:索引表达式为:yz+ STR(sc,3) )
2、在AB02表中输入如下记录;
PM Yz Sc Rkrq
Avatar 英语150 2010-5-15
3、将自由表cjb中所有记录物理删除
(提示:zap 命令)
4、已知KC表已存在主索引KCDM,索引表达式为KCDM;CJ表已存在普通索引KCDM, 索引表达式为KCDM, 以KC表为主表, CJ表为子表, 按KCDM建立永久关系, 并设置两表之间的参照完整性:更新级联、删除级联、插入限制
查询设计
已知课程表kc含有课程代码(kcdm,C),学分(xf,N)和课程名称(kcmc,C)等字段,成绩表CJ含有成绩(cj,N),课程代码(kcdm,C)和备注(bz,M)等字段,成绩等级信息存放在备注字段的前7个字节中。按如下要求修改chaxunB:
基于kc表和cj表查询每门课程成绩优秀和不及格的学生信息,要求:查询输出字段为kcmc,xh,学分,成绩等级,补考日期;查询结果按照kcmc排序,课程名称相同时按照成绩等级排序。仅仅输出成绩等级为“A优秀”或“F不及格”的记录。
注意:当cj>=60,xf为原来的值,否则为0;当cj<60时,补考日期为2010.09.06,否则为10个字节的空字符串。