还剩22页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
数据库技术(PB)课程设计学生成绩管理系统班级姓名指导老师登分号电子职业技术学院2010-11-18教师评语教师学生日期前言通过一学期的学习,我们解了PowerBuilder应用系统的开发过程以及组成PowerBuilder应用程序的各种对象是设计方法通过对这些内容的学习我们可以开发一些简单的数据库应用系统我们现在就来开发一个简单的学生成绩管理系统学生的成绩管理都是学校教务管理的重要环节之一随着学生人数的增加,学生成绩管理的任务更加繁重,必须借助与现代化的管理工具的手段提高学生成绩管理效率,学生成绩管理系统广泛使用于高校教务管理部门的学生成绩管理其作用和功能也是学生比较说熟悉和容易理解的一个应用系统的开发过程包括分析、设计、实现、调试和发布等阶段,以下大作业介绍学生成绩管理系统的分析和模块设计系统功能分析学生成绩管理系统需要完成的主要功能如下
(1)班级信息的输入和存储,包括班级编号,班级名称,所属专业,如校时间和学制等
(2)对已经输入的班级信息的修改,查询
(3)学生基本信息的输入与存储,包括学号,姓名,性别,出生日期,班级等
(4)学生基本信息的修改和查询
(5)每学期初各班做开设的课程的输入,包括课程名,学期,学时等
(6)各班所开设课程信息的修改和查询
(7)学期末输入每个学生的考试成绩
(8)学生成绩的修改
(9)查询某个学生,某个学期的各课成绩
(10)系统具有用户和密码的管理通过设计此学生成绩管理系统,让我们进一步掌握各种对象的作用、特点和实际方法对系统的分析、设计、调试和发布的完整过程目录封面……………………………………………任务书…………………………………………教师评语………………………………………1前言……………………………………………2目录……………………………………………3正文……………………………………………
1.1数据库的设计与实现………………………………………
41.2创建应用对象………………………………………………
61.3设计系统管理模块…………………………………………
71.4设计主窗口和菜单…………………………………………
111.5设计班级管理模块…………………………………………
141.6设计学生基本信息管理模块………………………………
161.7设计课程管理模块…………………………………………
181.8设计成绩管理系统…………………………………………
201.9系统的编译和发布…………………………………………21小结……………………………………………22参考文献………………………………………23正文
1.1数据库设计与实现
1.
1.1数据库设计根据学生成绩管理系统的功能要求通过分析系统要涉及的相关实体以及要收集存储和操纵的数据信息得到如图
1.1所示的系统E-R图根据系统E-R图得到以下关系模式班级班级编号班级名称所属专业学制入学时间人数.学生基本信息学号姓名性别出生日期家庭住址班级编号.课程班级编号学期课程名称学时教师.成绩学号学期课程名称成绩.为了系统的使用安全要建立用户管理而用户使用权限分为管理员和一般用户两类因此需要建立一个存储用户信息的关系.用户姓名密码权限.图
1.1系统E-R图
1.
1.2创建数据库先要在D盘根目录下建立一个工作夹命名为“xscj”,然后在“D:\xscj”文件夹下建立“data”来存储数据库文件在PowerBuilder开发环境中打开数据库画板,使用[ODBODBC]接口建立AdaptiveserverAnywhere
8.0ASA
8.0的数据库D:\xscj\data\xscj.db然后建立以下5个表和1个视图
1.“班级”表表名banji主键:bjbh各个键的属性见表1-1表1-1“班级”表的列属性列名数据类型宽度小数位空值标题Heading标签(Label)BjbhChar6NO班级编号班级编号Bjmcvarchar20NO班级名称班级名称Zymcvarchar20NO专业名称专业名称XzNumeric10NO学制学制RxsjDataNO入学时间入学时间RsNumeric10YES人数人数根据如上图所示的关系模式确定需建立的数据库和表,除了建“Banji”之外还有“jiben”主键是“xh”;“bjkc”主键是“bjbhxqkcmc”;“xscj”主键是“xhxqkcmc”;“users”主键是“xm”各表之间通过外键形成如下图所示的关联关系图
1.2表的关联关系
2.视图为了访问数据库方便,还建立了一个视图“xsbj”该视图由学生基本信息表和班级表连接而成,对应的SQL语句如下CREATEVIEWxsbjxhxmxbcsrqbjbhbjmczymcASSELECTJIBEN.xhjiben.xmjiben.xbjiben.csrqjiben.bjbhbanji.bjmcbanji.zymcFROMDBA.banjiDBA.jibenWHEREjiben.bjbh=banji.bjbh完成数据库和表的创建后,可以在数据库画板中向数据库输入部分数据其中,“用户”表中必须输入一条记录(“admin”,“12345”,“y”)作为进入系统默认的管理员,即姓名为“admin”,密码为“12345”
1.2创建应用对象完成数据库的设计和系统功能设计之后,开始各种功能模块的实现,在PB中开发应用程序时,就是创建各种对象,为对象设置属性及编写事件脚本的过程
(1)创建新的工作空间,工作空间设为“d\xscj\xscj.pbw”
(2)创建应用对象设为“app_xscj”,应用库文件的路径“d:\xscj\xscj.pbl”目标文件“d:\xscj\xscj.pbt”.
(3)打开应用对象画板应用对象的icon属性设置为“d:\xscj\BOOKS.ICO”.(预先准备的图标文件)
(4)为应用对象的open事件编写代码如下SQLCA.DBMS=ODBCSQLCA.AutoCommit=FalseSQLCA.DBPARM=Connectstring=DSN=aa;UID=dba;PWD=sqlConnect;ifSQLCA.sqlcode0Thenmessagebox提示数据库连接失败!elseopenw_login//打开登陆窗口endif
1.3设计系统管理模块本模块实现用户登陆控制,用户自己的密码修改和用户管理,其中包括修改用户信息,添加新用户,删除用户,只有管理员有此权限
1.
3.1设计登陆窗口登陆窗口如图
1.3所示图
1.3登陆窗口
1.创建窗口并设置属性创建登录窗口W_login在窗口上放置1个图片控件(p_1)3个静太文本(st_1st_2st_3),1个成组框控件(g_1),2个单行编辑起控件(sle_1sle_2),2个命令按钮(cb_1cb_2)
2.编写脚本
(1)定义全局变量Stringgs_usernamegs_passwordgs_admin
(2)定义实例变量Intli_n
(3)登陆窗口w_login的open事件脚本li_n=3注初始化变量li_n限制出错次数为3次
(4)【确定】按钮cb_1的clicked事件脚本如下stringls_usernamels_passwordls_username=trimsle_
1.text//输入用户名和密码ls_password=trimsle_
2.textifls_username=orls_password=thenmessagebox提示用户名和密码不能为空elseSELECTusers.nameusers.passwordusers.adminINTO:gs_username:gs_password:gs_adminFROMusersWHEREusers.name=:ls_usernameANDusers.password=:ls_password;ifsqlca.sqlcode0thenopenm_main//密码正确,打开主窗口closew_loginelseli_n=li_n-1ifli_n0thenmessagebox提示用户名或密码错误elsemessagebox提示错误超过3次自动退出halt//错误超过3次,退出程序endifendifendIf
(5)【放弃】按钮cb_2的clicked事件脚本如下halt//退出程序
1.
3.2设计密码修改窗口密码修改窗口如图
1.4所示图
1.4密码修改窗口
1.创建窗口并设置属性
2.编写脚本
(1)[确定]按钮cb_1的Clicked事件脚本如下.stringls_passwordiftrimsle_
1.textgs_passwordthenmessagebox提示旧密码错误elseiftrimsle_
2.text=trimsle_
3.textthenls_password=trimsle_
2.textupdateuserssetpasswordwhereusers.name=:gs_usernameandusers.password=:gs_password;ifsqlca.sqlcode0thenmessagebox提示密码修改不成功!!elsecloseparentmessagebox提示密码修改完成endifelsemessagebox提示两次新密码不相同endifendif
(2)[取消]按钮cb_2的Clicked事件脚本如下closeparent
1.
3.3设计用户管理的数据窗口用户管理窗口如图
1.5所示图
1.5用户管理窗口
1.设计数据窗口创建数据窗口”d_yhgl”显示风格为”Grid”数据源类型为”QuickSelect”布局如图
1.6所示其控件”admin”的编辑风格改为”DropDownListBox”码表CodeTable如图
1.6所示数据窗口d_yhgl生成的SQL.select语句为:SELECT“users”.”name””users”.”password””users”.”admin”FROM”users”图
1.6数据窗口d_yhgl
2.创建窗口并设置属性
3.编写脚本写脚本
(1)用户管理窗口的open事件如下dw_
1.settransobjectsqlcadw_
1.retrieve()
(2)用户管理窗口的closequery事件脚本如下|integerrtdw_
1.accepttextifdw_
1.modifiedcount=0anddw_
1.deletedcount=0thenreturnendifendifreturn1
(3)数据窗口控件的Itemchanged事件脚本如下cd_
3.enabled=true//激活保存按钮
(4)添加】按钮的clicked事件家如下integerrowrow=dw_
1.insertrow0dw_
1.scrolltorowrow
(5)【删除】按钮的clicked事件脚本如下dw_
1.deleterow0cb_
3.enabled=true
(6)【保存】按钮的clicked事件如下
(7)【退出】按钮的clicked的事件脚本如下closeparent
1.4设计主窗口和菜单
1.
4.1创建菜单对象1设计登录窗口菜单结构如图
1.7所示,菜单名为“m_main”菜单栏中的菜单项设置了访问键(Accesskey)常用的菜单项设置了快捷键(如|【退出系】的快捷键为【ALT+F4】【录入班级信息】的快捷键为【CTRL+A】)最常用的菜单项在工具条上建立了按钮2编写脚本
(1)【系统】菜单下的【密码修改】的clicked事件脚本如下openw_mmxg
(2)【系统】菜单下的【用户管理】的clicked事件脚本如下openw_yhgl
(3)【系统】菜单下的【退出系统】的click事件脚本如下closeparentwindow
(4)【班级管理】菜单下的【录入班级信息】的clicked事件脚本如下opensheetw_banji_shuruw_main6original!
(5)【班级管理】菜单下的【修改班级信息】的clicked事件如下opensheet(w_banji_xiugaiw_main6original!)
(6)【班级管理】菜单下的【浏览班级信息】的clicked事件opensheet(w_banji_liulanw_main6ooriginal!)
(7)【学生管理】菜单的【录入学生信息】的clickeds事件opensheet(w_jiben_shuruw_main6original!)
(8)【学生管理】菜单下的【修改学生信息】的clicked事件opensheet(w_jiben_xiugaiw_main6original!)
(9)【学生管理】菜单下的〖查询学生信息〗的clicked事件opensheet(w_jiben_chaxunw_mian6original!)
(10)【课程管理】菜单下的【录入/修改开设课程】的ckicked事件如下opensheet(w_bjkc_shuruxiugaiw_main6original!)
(11)【课程管理】菜单下的【查询开设课程】的clicked事件opensheetw_bjkc_chaxunw_mnain6original!
(12)【成绩管理】菜单下的【录入修改成绩】的clicked事件opensheet(w_xscj_shuruw_main6original!)
(13)【成绩管理】菜单下的【查询个人成绩】的clicked事件opensheet(w_xscj_grcxw_main6original!)
(14)【成绩管理】菜单下的【查询班级成绩】的clicked事件opensheet(w_xscj_bjcxw_main6original!)15【成绩管理】菜单下的【查询个人成绩】的clicked事件opensheet(w_xscj_kccjw_main6original!)
(16)【窗口】菜单下的【层叠窗口】的clicked事件如下w_main.arrangesheetscascade!
(17)【帮助】菜单下的【关于】的clicked事件如下openw_about
(18)【帮助】菜单下的【联机帮助】的clicked事件如下showHelp“d:\xscj\help\xscjhelp.chm”index图
1.7菜单结构其功能是打开创建好的帮助文件”d:\xscj\help\xscjhelp.chm”,index!参数表示打开帮助的索引页PowerBulider本身没有提供制作帮助文件的工具,可以借助专门的制作工具实现,在PowerBulider中可以使用ShowHelp函数打开
1.
4.2设计主窗口本例的主窗口界面如图
1.8所示图
1.8主窗口界面创建窗口对象w_main,表1-2主窗口的属性对象属性取值W_mainTitle学生成绩管理系统WindowtypeMdihelpMenuNameM_mainwindowststemaximized创建窗口对象w_main的Open事件脚本如下ifgs_admin=’n’thenm_main.m_系统.m_用户管理.enabled=falseendif其功能是非管理员用户进入系统时关闭[用户管理]菜单项
1.5设计班级管理模块
1.
5.1设计访问班级信息的数据窗口
1.设计输入班级信息的数据窗口创建数据窗口d_banji_shuru,显示风格为”Freeform”数据源类型为“Quickselect”布局图略数据窗口生成的SQLselect语句为SELECT“banji”.“bjbh”“banji”.“bjmc”“Banji”.zymc”“banji”.“xz”“banji”.“rsxj”“banji”.“rs”FROM“banji”
2.设计修改班级信息的数据窗口创建数据窗口d_banji_xiugai,显示风格为“Grid”,数据源类型为“QuickSelect”布局图略数据窗口生成的SQLSelect语句为SELECT“banji”.”bjbh””banji”.”bjmc””banji”.“zymc””banji”.”xz””banji”.”rxsj””banji”.”rs”FROM“banji”ORDERBY“banji”.”bjbh”ASC
1.
5.2设计访问学生信息窗口
1.设计输入窗口创建窗口对象w_shuru放置一个数据窗口控件,八个命令按钮,如下图
1.9所示图
1.9输入窗口
(1)【〈〈〉按钮的clicked事件脚本dw_
1.scrolltorow1
(2)【】按钮的clicked事件脚本dw_
1.scrollnextrow
(3)【】按钮的clicked事件脚本dw_
1.scrollnextrow
(4)【】按钮的clicked事件脚本dw_
1.scrolltotrowdw_
1.rowcount
2.设计修改窗口创建窗口对象w_xiugai放置一个数据窗口控件,四个命令按钮窗口布局如下图
1.10所示图
1.10修改窗口窗口和控件的事件脚本与以上输入窗口的对应相同
3.设计输入班级信息窗口通过继承输入窗口w_shuru生成输入班级信息窗口w_banji_shuru将数据控件dw_1的DataObject属性设置为d_banji_shuru将窗口的Title属性改为“录入班级信息”,此窗口完成了
4.设计修改班级信息窗口通过继承输入窗口w_xiugai生成输入班级信息窗口w_banji_xiugai将数据控件dw_1的DataObject属性设置为d_banji_xiugai将窗口的Title属性改为“修改班级信息”,此窗口完成了
5.设计浏览班级窗口创建窗口对象w_banji_liulan放置一个数据窗口控件,如下图
1.11所示图
1.11班级信息浏览窗口窗口的open事件脚本如下dw_
1.settransobjectsqlcadw_
1.retrieve
1.6设计学生基本信息本模块实现学生基本信息的输入、修改和查询
1.
6.1设计访问学生的基本信息的数据窗口
1.设计输入学生基本信息的数据窗口创建数据窗口d_jiben_shuru,显示风格为“”,数据源类型为“”其布局如图略其中,列控件“xb”的编辑风格改为“RadloButtons”,列控件“bjbh”的编辑风格为“DropDownw”,其(DataWindow)属性设置为“d_banji_xiugai”,(DispiayColumn)和(DataColumn)属性都设置为“300”,(LiesinDropDown)属性设置为“6”(VScrollbar)属性设置为“True”.数据窗口生成的SQLselect语句为SELECT”jiben”.”xh””jiben”.”xm””jiben”.”xb””jiben”.”csrq””jiben”.”jizz””jiben”.”bjbh”FROM“jiben”
2.设计修改学生基本信息的数据窗口创建数据窗口d_jiben_xiugai显示风格为“”数据源类型为“”,数据窗口生成的SQLselect语句为:SELECT“jiben”.”xh””jiben”.”xm””jiben”.”xb”“jiben”.”csrq””jiben”.”jizz””jiben”.”bjbh”FROM“jiben”ORDERBY|“jiben”.”xh”ASC
3.设计查询学生基本信息窗口创建数据窗口为d_jiben_chaxun,显示风格为“Grid”,数据源类型为“SQLselect”,其中定义3个string型检索参数变量mxh、mxm、mbj,数据窗口生成的SQLelect语句为SELECT“banji”.”bjmc””jiben”.”xh””jiben”.“xm””jiben”.”xb””jiben”.”csrq””jiben”.”jtzz””banji”.”bjbh”FROM“jiben””banji”WHERE“banji”.”bjbh”=”jiben”.”bjbh”AND“jiben”.”xh”like:mxhAND“jiben”.”xm”like:mxmAND“jiben”.”xh”like:mbjORDERBY“jiben”.”xh”ASC
1.
6.2设计访问学生基本信息的窗口
1.设计输入学生基本信息窗口通过继承输入窗口w_shuru生成输入班级信息窗口w_jiben_shuru将数据控件dw_1的DataObject属性设置为d_jiben_shuru将窗口的Title属性改为“录入学生基本信息”,此窗口完成了
2.设计修改学生基本信息窗口通过继承输入窗口w_xiugai生成输入班级信息窗口w_jiben_xiugai将数据控件dw_1的DataObject属性设置为d_jiben_xiugai将窗口的Title属性改为“修改学生基本信息”,此窗口完成了如图
1.12所示图
1.12数据窗口d_jiben_xiugai
3.设计查询学生基本信息窗口查询学生基本信息窗口如下图
1.13所示图
1.13查询学生基本信息窗口首先创建窗口对象,在窗口中放置2个静态文本控件,1个下拉表控件,1个单行编辑器控件,1个命令按钮1个数据窗口控件和一个线形控件,以及有对查询按钮的open事件脚本.
1.7设计课程管理模块
1.
7.1设计访问课程信息的数据窗口
1.设计输入班级课程信息的数据窗口创建数据窗口d_xscj_shuru,显示风格为Grid,数据源类型为“SQLSelect”,其布局如图
1.14所示图
1.14数据窗口d_bjkc_shuru其中,列控件“bjbh”的编辑风格改为“DropDownDW”,其属性设置为“D_banji_xiugai”,DispiayColumn属性和DataWindow属性都设置为“bjbh”LinesinDropDOWN属性设置为“300”,VScrollBar属性设置为“True”数据窗口d_bjkc_shuru生成的语句为SQLselect语句为SELECT“bjkc”.”bjbh””bjkc”.”xq””bjkc”.”kcmc””bjkc”.”xs””bjkc”.”jsxm”FROM“bjkc”
2.设计查询班级课程信息的数据窗口创建数据窗d_bjkc_chaxun,显示风格为“Grid”,数据源类型为“SQLSelect”,其中,定义两个string型检索参数变量mxq,mbjmc,分别表示学期,班级,形成带检索参数的的数据窗口数据窗口生成SQLselect语句为:SELECT“bjkc”.”kcmc””bjkc”.”xs””bjkc”.”jsxm”FROM”bjkc””banji”WHERE“banji”.”bjbh”=”bjkc”.”bjbh”AND“bjkc”.”xq”=:mxqAND“banji”.”bjmc”=:mbjmc
1.
7.2设计访问课程信息的窗口
1.设计输入修改班级课程信息的窗口输入修改班级信息的窗口的窗口的布局如下图
1.15所示图
1.15输入修改班级课程信息的窗口首先,从祖先窗口w_xiugai继承生成窗口对象w_bjkc_shuruxiugai,调整其大小,然后将数据窗口控件dw_1的DataObject属性设置为d_bjkc_shuru,
2.设计查询班级开设课程的窗口首先创建一个窗口对象w_bjkc_chaxun,在窗口中放置2个静态文本控件,2个下拉列表控件,1个命令按钮、,1个数据窗口控件编写脚本
(1)编写窗口w_bjkc_chaxun的open事件脚本(略)
(2)【查询】按钮的事件脚本(略)
1.8设计成绩管理模块
1.
8.1设计访问成绩信息的数据窗口
1.设计输入成绩的数据窗口创建数据窗口d_xscj_shuru,显示风格为””Grid,数据源类型为”SQLselect”,数据来源与xscj成绩表和视图xsbj,其中,学号,学期,课程,课程名称和成绩为xscj的列,姓名是的xsbj列
2.设计查询学生个人某学期各课成绩的数据窗口创建数据窗口d_xscj_grcx,显示风格为Grid,数据源类型为”QuickSelect”,在【Summary】条中添加一个计算域控件,计算数据窗口中成绩总和数据窗口的检索参数为mxh.mxq,分别对应与学号和学期数据窗口生成的SQLselect语句为SELECT“xscj”.”kcmc””xscj”.”cj”FROM“xscj””xsbj”WHERE“xscj”.”xh”=:mxhAND“xscj”.”xq”=:mxq效果图如下
3.设计要查询某班级某学期全体学生各课成绩的数据窗口创建数据窗口d_xscj_bjcx,显示风格为”CrossTab”,数据源类型为”SQLselect”,数据来源于xscj和视图xsbj在【Header
[1]】条中添加两个计算域控件,对应的表达试分别为mbjmc和mxq,3个文本控件,其文本分别为“成绩单”,“班级”和“学期”数据窗口检索参数为mxq和mbjmc,分别对应学期和班级名称数据窗口生成的SQLselect语句为:SELECT“xscj”.”xh””xscj”.”xm””xscj”.”kcmc””xscj”.”cj””xscj”.”xq””xsbj”.”bjmc”FROM“xscj””xsbj”WHERE“xscj”.”xh”=”xsbj”.”xh”AND“xscj”.”xq”=:mxqAND“xscj”.”bjmc”=:mbjmcORDERBY“xscj”.”xh”ASC
4.设计查询某班级某学期,全体学生某课成绩的数据窗口创建数据窗口d_xscj_kccx,显示风格为”N_UP”,数据源类型为”SQLselect”,数据来源于xscj和视图xsbj在【Header】条中添加两个计算域控件,对应的表达试分别为mbjmc和mkcmc,3个文本控件,其文本分别为“成绩单”,“班级”和“课程”数据窗口检索参数为mxq和mbjmc,mkcmc分别对应学期和班级名称和课程名称数据窗口生成的SQLselect语句为:SELECT“xscj”.”xh””xscj”.”xm””xscj”.”kcmc””xscj”.”cj””xscj”.”xq””xsbj”.”bjmc”FROM“xscj””xsbj”WHERE“xscj”.”xh”=”xsbj”.”xh”AND“xscj”.”xq”=:mxqAND“xscj”.”bjmc”=:mbjmc(”xscj”.”kcmc”=:mkcmc)ORDERBY“xscj”.”xh”ASC
1.
8.2设计访问成绩信息的窗口
1.设计输入成绩的窗口创建窗口对象w_xscj_shuru在窗口上有1个分组框控件,有静态文本,有下拉列表框命令按钮等,如下图
1.16所示图
1.16输入成绩窗口
2.设计查询学生个人成绩窗口(略)
3.设计查询班级成绩的窗口(略)
4.设计查询课程成绩的窗口(略)
1.9系统的编译和发布除了以上建立的窗口外,还要建【设计查询学生个人成绩的窗口】【设计查询班级成绩的窗口】【设计查询课程成绩的窗口】,对相应按钮及控件进行编写脚本,这样才是完成了对整个编译系统,并且在每个模块的实现过程中,对应每个功能都进行了仔细的测试和调试,在最后对整个程序做系统的测试,测试完后进行对应用程序的编译和发布在以上整个分析过程中并没有一一说明部分只是概述出拉,在每部分都有例子其他的设计与脚本的编译有相同之处就没有必要全部详细的解说出来拉在这所有的应用程序的编译和发布步骤如下
1.创建工程对象单击工具条上的【New】打开其对话框,选择【Project】标签页,再选择【ApplicationWizard】图标,单击Ok按钮,开始工程向导
2.编译生成可执行程序单击工程画板上的【Deploy】图标,开始编译过程,生成可执行文件xscj.exe
3.测试分布对可执行程序做系统的测试,最后便可发布了在以上的整个学生成绩管理系统工程基本可以完成学生基本情况的录入、修改、查询和学生成绩管理的录入、修改、查询小结在本次大作业中通过学生成绩管理系统实例介绍了用PowerBuilder开发数据库应用程序的过程,介绍了开发应用系统时的系统分析,功能设计,数据库设计以及数据库的实现,具体描述了实例中各种PowerBuilder对象的设计方法,较为系统,综合,全面地总结了PowerBuilder的应用.个人在设计调试整个系统的时候遇到诸多问题,并通过书上的解说来解决我们在设计时所面临的问题并从中了解到更多,在以后的学习中希望能学到更多,来完成自己所想设计的系统通过自己来独立完成参考文献1.郑阿奇·PowerBuilder实用教程北京电子工业出版社,20042.孟祥双,李宏力·PowerBuilder程序设计教程北京中国电力出版社,20043.华铨平·PowerBuilder程序设计北京清华大学出版社,20044.陈刚·PowerBuilder案例开发程序设计教程北京中国水利水电出版社,20035.郭兴成·PowerBuilder
9.0实用教程北京科学出版社,2003性别姓名学号出生日期家庭住址班级编号学生所属班级开设课程修课班级编号班级名称专业学制入学时间人数学期教师课程名称学时学期成绩。