收藏 分销(赏)

上海市高等教育自学考试数据库系统原理(实践).doc

上传人:人****来 文档编号:4062804 上传时间:2024-07-26 格式:DOC 页数:4 大小:53.54KB
下载 相关 举报
上海市高等教育自学考试数据库系统原理(实践).doc_第1页
第1页 / 共4页
上海市高等教育自学考试数据库系统原理(实践).doc_第2页
第2页 / 共4页
点击查看更多>>
资源描述
上海市高等教育自学考试 计算机信息管理、网络、软件专业 (独立本科段) 《数据库系统原理》实践性环节考核大纲 一、考核目标 1. 具有熟练使用PowerBuilder 9。0建立本地数据库和基本表、视图的能力。 2.掌握使用PowerBuilder 9。0建立数据库应用程序的方法. 二、运行环境 1。 平台:Windows 2000 2。 PowerBuilder 9。0 软件 三、考核方式 实行闭卷考核。 四、考核时间和日期 上机考核每次为1小时;考核日期另行规定. 五、考核范围 1. 数据库的基本操作 建立数据库;连接数据库;建立表、主键、外键; 数据插入、查询、删除和修改;建立视图。 2。 建立数据库应用程序 建立工作空间、目标、应用;建立数据窗口对象; 建立主窗口(含数据窗口、命令按鈕、静态文本框和单行编辑器等控件); 书写脚本;运行应用程序。 六、上机参考书籍及内容 《数据库系统原理》,全国高等教育自学考试指导委员会组编,丁宝康主编,经济科学出版社2007年版。 教材“第8章 PowerBuilder 9。0简介及应用”中 8。2节(“学生选课系统”开发过程)中“‘数据操作'窗口”的有关内容。具体上机样题见下面内容七. 七、上机样题 (一)上机题目 在PowerBuilder9。0环境中完成下面两个任务: ·建立一个有关学生、课程、选修等有关信息的数据库; ·建立有关数据浏览、插入、查找、修改和删除等操作的应用程序及界面。 (二)操作步骤 (应严格按照下列步骤操作) 1。 建立数据库newdb (数据库文件newdb.db必须保存在C:\temp目录下)。 (自动连接数据库,ODBC数据源名也为newdb)。 2。 在数据库newdb中建立三张表: s(sno,sname,age,sex) c(cno,cname,tname) sc(sno,cno, score) 上述属性中,age和score为smallint型,其余均为char型。 在表s中,主键是sno; 在表c中,主键是cno; 在表sc中,主键是(sno,cno),外键有两个:sno和cno. 请分别为这三个表输入下列记录: s表: c表: sc表: sno sname age sex cno cname tname sno cno score s1 wen 18 m c1 pascal shi s1 c1 95 s2 bao 25 f c2 basic lou s1 c2 90 s3 li 20 f c3 c ma s1 c3 85 s4 he 22 m c4 c++ men s1 c4 80 s2 c4 75 3.建立统计学生平均成绩的视图:s_sc(sno,sname,avg_score) (注意:建立视图后,应把数据库先Disconnect,再Connect) 4. 建工作空间 (C:\temp\student.pbw) 建目标 (C:\temp\student.pbt) 建应用 (C:\temp\student。pbl) 5。 在应用中建立四个数据窗口对象d_s、d_sc、d_c、d_s_sc, 分别显示三个表s、sc、c和视图s_sc的数据. 6。 在应用中建立主窗口w_main,主窗口中应包含: ·四个数据窗口控件(dw_1、dw_2、dw_3、dw_4), 分别显示表s、表sc、表c、和视图s_sc的数据。 ·八个命令按钮控件。 ·一个静态文本控件:放“输入数据:”字样。 ·一个单行编辑器控件(sle_1):用于输入数据,以便进行查找和修改。 程序的主界面如下: 显示表C的数据 dw_3 显示表SC的数据 dw_2 显示表S的数据 dw_1 显示视图S_SC的数据 dw_4 BROWSE UPDATE_SC OK DELETE_SC EXIT INSERT_SC陈 QUERY_SNO RESET 输入数据: 单行编辑器控件(sle_1) 8个命令按钮控件 7. 在应用各对象中书写脚本,使该应用具有下列功能: ① 应用运行开始时,出现w_main窗口,其中四个数据窗口控件中内容为空白. ② 点击“BROWSE"按钮,显示表s、表sc、表c和视图s_sc的内容,并可浏览。 ③ 点击“RESET”按钮,能把四个数据窗口控件中内容置为空白。 ④ 点击“INSERT_SC”按钮,可在sc表中插入一条记录,内容请自定; 再点击“OK”按钮,可把这条记录插入到数据库中。 ⑤ 点击“DELETE_SC”按钮,可在sc表中删除当前记录; 再点击“OK”按钮,可把这条记录从数据库中删除。 ⑥ 在单行编辑器中输入一个整数(譬如5)后,点击“UPDATE_SC”按钮, 可将sc表当前记录的成绩值增加这个整数值(5); 再点击“OK"按钮,可把这条记录的修改写入数据库中。 ⑦ 在单行编辑器中输入一个学号(譬如s1)后,点击“QUERY_SNO"按钮, 可在s表、sc表和视图s_sc中显示该学生情况和其所学课程及平均成绩情况. ⑧ 点击“EXIT"按钮,返回(退出应用)。 8.运行应用student。 9.据考场规定的方法,把C:\temp目录下的内容发送到服务器的存储器中。 (三)参考答案 (编写脚本) 1。在应用student.pbl的open事件中写脚本: SQLCA.DBMS="ODBC" //数据库厂商的名称 SQLCA。AutoCommit=False //定义程序是手工提交事务 SQLCA。DBParm=”ConnectString=′DSN=newdb′" //DBMS所需的额外信息 /*上述三条可从DB Profile对话框中的Preview选项的内容复制、粘贴得到*/ connect; //连接数据源newdb! open(w_main) //打开主窗口w_main 2.在主窗口w_main的各个对象中书写脚本: ① 在主窗口w_main的open事件中写脚本: dw_1.settransobject(sqlca) //给数据窗口控件dw_1设置通讯区域sqlca dw_2.settransobject(sqlca) //给数据窗口控件dw_2设置通讯区域sqlca dw_3。settransobject(sqlca) //给数据窗口控件dw_3设置通讯区域sqlca dw_4.settransobject(sqlca) //给数据窗口控件dw_4设置通讯区域sqlca sle_1.setfocus() //将焦点设置到控件sle_1 ② 命令按钮BROWSE的Clicked事件: dw_1。retrieve() //从数据库的s表中检索全部数据 dw_2。retrieve() //从数据库的sc表中检索全部数据 dw_3.retrieve() //从数据库的c表中检索全部数据 dw_4。retrieve() //从视图s_sc中检索全部数据 ③ 命令按钮RESET的Clicked事件: string query dw_1。reset() //清除数据窗口控件dw_1中的所有行 dw_2。reset() //清除数据窗口控件dw_2中的所有行 dw_3。reset() //清除数据窗口控件dw_3中的所有行 dw_4。reset() //清除数据窗口控件dw_4中的所有行 query=”” //置过滤条件为空 dw_1。setfilter(query) //修改dw_1的过滤条件 dw_1。filter() //过滤数据 dw_2。setfilter(query) //修改dw_2的过滤条件 dw_2。filter() //过滤数据 dw_4。setfilter(query) //修改dw_4的过滤条件 dw_4。filter() //过滤数据 sle_1.text=”" //置单行编辑器为空 sle_1.setfocus() //将焦点设置到控件sle_1 ④ 命令按钮INSERT_SC的Clicked事件: dw_2.insertrow(0) //在sc表的尾部插入一行 dw_2。scrolltorow(dw_2。rowcount()) //把指定行设置为当前行 dw_2.setfocus() //将焦点设置到控件dw_2 ⑤ 命令按钮DELETE_SC的Clicked事件: dw_2.deleterow(0) //从数据库的sc表中删除当前行 ⑥ 命令按钮UPDATE_SC的Clicked事件: int g1,g2 g1=integer(sle_1.text) //取单行编辑器中的整数 g2=dw_2.GetItemNumber(dw_2.GetRow(),3) //取当前记录的原grade值 dw_2。SetItem(dw_2.GetRow(),3,g2+g1) //在原grade值上增加g1值 ⑦ 命令按钮OK的Clicked事件: if dw_2。update()=1 then //将修改传送到数据库,成功否 commit; //传送成功,事务提交 else rollback; //传送不成功,事务回退 end if ⑧ 命令按钮QUERY_SNO的Clicked事件: string query dw_3。reset() //清除数据窗口控件dw_3中的所有行 query=”sno=’"+sle_1。text+”'" //设置过滤条件 dw_1。setfilter(query) //修改dw_1的过滤条件 dw_1.filter() //过滤数据 dw_1。retrieve() //从s表中显示检索到的数据 dw_2.setfilter(query) //修改dw_2的过滤条件 dw_2.filter() //过滤数据 dw_2。retrieve() //从sc表中显示检索到的数据 dw_4.setfilter(query) //修改dw_4的过滤条件 dw_4。filter() //过滤数据 dw_4。retrieve() //从视图s_sc中显示检索到的数据 sle_1.setfocus() //将焦点设置到控件sle_1 ⑨ 命令按钮EXIT的Clicked事件: close(parent) //关闭按钮所在的窗口 (四)程序运行结果 程序编制完成以后,单击PowerBar上的Run按钮就可以运行程序了,程序界面如下所示. (五)系统中各对象之间的联系示意图 应用 窗口 数据窗口 数据库 Application windows DataWindows Database d_c d_s newdb 表S 表SC 表C student d_sc (数据源名 也是newdb) w_main open dw_4 dw_3 dw_2 dw_1 (大纲结束) E OK D R B I U Q 输入数据: 视图 S_SC d_s_sc 4 俱乐部名称:自考乐园;俱乐部id:5346389(请牢记它哦~在百度贴吧的搜索框中输入俱乐部id,可以直接进入俱乐部);俱乐部url地址:
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 考试专区 > 自考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服