内容发布更新时间 : 2025/1/8 2:32:51星期一 下面是文章的全部内容请认真阅读。
上海市高等教育自学考试
计算机信息管理、网络、软件专业
(独立本科段)
《数据库系统原理》实践性环节考核大纲
一、考核目标
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型。
1 俱乐部名称:自考乐园;俱乐部id:5346389(请牢记它哦~在百度贴吧的搜索框中输入俱乐部id,可以直接进入
俱乐部);俱乐部url地址:http://tieba.http://www.35331.cn//club/5346389(您也可以通过此url进入俱乐部。)
在表s中,主键是sno; 在表c中,主键是cno; 在表sc中,主键是(sno,cno),外键有两个:sno和cno。 请分别为这三个表输入下列记录:
s表: c表: sc表: sno sname age s1 s2 s3 s4 wen bao li he 18 25 20 22 sex m f f m
cno c1 c2 c3 c4 cname tname pascal shi basic lou c ma c++ men
sno cno score s1 s1 s1 s1 s2 c1 c2 c3 c4 c4 95 90 85 80 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):用于输入数据,以便进行查找和修改。 程序的主界面如下: 显示表S的数据 显示表C的数据 显示视图S_SC的数据 显示表SC的数据 dw_1 dw_2 dw_3 dw_4
BROWSE INSERT_SCUPDATE_SC QUERY_SNO 输入数据:
RESET DELETE_SC OK EXIT 单行编辑器控件(sle_1) 8个命令按钮控件
7. 在应用各对象中书写脚本,使该应用具有下列功能:
① 应用运行开始时,出现w_main窗口,其中四个数据窗口控件中内容为空白。 ② 点击“BROWSE”按钮,显示表s、表sc、表c和视图s_sc的内容,并可浏览。 ③ 点击“RESET”按钮,能把四个数据窗口控件中内容置为空白。
2 俱乐部名称:自考乐园;俱乐部id:5346389(请牢记它哦~在百度贴吧的搜索框中输入俱乐部id,可以直接进入
俱乐部);俱乐部url地址:http://tieba.http://www.35331.cn//club/5346389(您也可以通过此url进入俱乐部。)
④ 点击“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=\ //数据库厂商的名称
SQLCA.AutoCommit=False //定义程序是手工提交事务 SQLCA.DBParm=\ //DBMS所需的额外信息
/*上述三条可从DB Profile对话框中的Preview选项的内容复制、粘贴得到*/ connect; //连接数据源newdb! open(w_main) //打开主窗口w_main
2.在主窗口w_main的各个对象中书写脚本:
① 在主窗口w_main的open事件中写脚本:
dw_1.settransobject(sqlca) dw_2.settransobject(sqlca) dw_3.settransobject(sqlca) dw_4.settransobject(sqlca) sle_1.setfocus()
//给数据窗口控件dw_1设置通讯区域sqlca //给数据窗口控件dw_2设置通讯区域sqlca //给数据窗口控件dw_3设置通讯区域sqlca //给数据窗口控件dw_4设置通讯区域sqlca //将焦点设置到控件sle_1
//从数据库的s表中检索全部数据 //从数据库的sc表中检索全部数据 //从数据库的c表中检索全部数据 //从视图s_sc中检索全部数据
② 命令按钮BROWSE的Clicked事件:
dw_1.retrieve() dw_2.retrieve() dw_3.retrieve() dw_4.retrieve()
③ 命令按钮RESET的Clicked事件:
string query dw_1.reset() dw_2.reset() dw_3.reset() dw_4.reset() query=\
//清除数据窗口控件dw_1中的所有行 //清除数据窗口控件dw_2中的所有行 //清除数据窗口控件dw_3中的所有行 //清除数据窗口控件dw_4中的所有行 //置过滤条件为空
3 俱乐部名称:自考乐园;俱乐部id:5346389(请牢记它哦~在百度贴吧的搜索框中输入俱乐部id,可以直接进入
俱乐部);俱乐部url地址:http://tieba.http://www.35331.cn//club/5346389(您也可以通过此url进入俱乐部。)