《数据库系统开发与PowerBuilder》教学教案.docx
《《数据库系统开发与PowerBuilder》教学教案.docx》由会员分享,可在线阅读,更多相关《《数据库系统开发与PowerBuilder》教学教案.docx(100页珍藏版)》请在冰豆网上搜索。
《数据库系统开发与PowerBuilder》教学教案
国家信息化计算机教育认证
高等职业教育电子信息类专业“双证课程”
培养方案配套教学教案
数据库系统开发与PowerBuilder
中国高等职业技术教育研究会
CEAC信息化培训认证管理办公室
2006年05月
目录
第1-2课设计数据库4
第一小节数据库系统设计4
第二小节数据库系统需求分析5
第三小节数据库系统概念设计8
第四小节数据库系统逻辑设计11
第五小节数据库系统物理设计13
第六小节数据库系统实施13
第七小节数据库系统运行维护13
第3-4课PowerDesigner15
第一小节PowerDesigner简介15
第二小节概念数据模型16
第三小节物理数据模型18
第5课创建应用程序20
第一小节使用PowerBuilder9.020
第二小节创建应用程序22
第三小节连接数据库22
第6课设计窗口与菜单25
第一小节窗口设计25
第二小节菜单设计28
第三小节菜单捆绑29
第7课脚本语言31
第一小节PowerScrip语言31
第二小节PowerScrip程序设计实例37
第8课控件与程序设计38
第一小节控件38
第二小节控件脚本实例39
第9课数据检索窗口设计44
第一小节数据窗口简介44
第二小节数据窗口对象44
第三小节数据窗口控件46
第四小节数据检索窗口实例47
第10课数据删除窗口设计50
第一小节数据窗口控件函数50
第二小节数据删除窗口实例51
第11-12课数据修改增加窗口设计57
第一小节数据窗口控件事件57
第二小节数据修改增加窗口实例59
第13课数据报表窗口设计71
第一小节数据报表设计71
第二小节数据报表设计实例72
第14课统计图表窗口设计74
第一小节统计图表设计74
第二小节统计图表设计实例75
第15课输出打印窗口设计78
第一小节输出打印设计78
第二小节输出打印设计实例78
第16课生成可执行程序84
第一小节程序调试84
第二小节可执行文件生成86
第三小节应用程序发布87
第1~2课设计数据库
教学目的
●掌握数据库设计方法
知识点及技能点
●了解数据库的设计步骤
●会设计概念模型、逻辑模型、物理模型
●熟练掌握概念模型转换为逻辑模型的方法
学时要求
●数据库系统设计概述、需求分析、概念设计:
2学时
●逻辑设计、物理设计、数据库的实施、数据库的运行和维护:
2学时
教学策略或过程
具体讲课内容如下。
第1小节数据库系统设计
知识要点
1.数据库设计的概念
(1)数据库设计
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式。
(2)数据库设计的目标
目标是在DBMS的支持下,按照应用的要求,为某一应用设计一个结构合理、使用方便、效率较高的数据库及其应用系统。
(3)数据库设计的特点
1数据库建设是硬件、软件和干件的结合。
2数据库设计过程是结构设计和行为设计的密切结合。
2.数据库设计的方法
(1)原型化法
原型化法是为了动态地确定用户对系统的需求,逐步弄清楚不确定因素而提出的一种试验保证方法。
(2)规范设计法
运用软件工程的思想与方法,根据数据库设计的特点,提出各种设计准则与设计规程。
(3)典型的规范设计方法
1新奥尔良(NewOrleans)方法
将数据库设计分为4个阶段,即需求分析(分析用户要求)、概念设计(信息分析和定义)、逻辑设计(设计实现)和物理设计(物理数据库设计)。
2S.B.Yao方法
将数据库设计分为6个步骤,即需求分析、模式构成、模式汇总、模式重构、模式分析和物理数据库设计。
3I.R.Palmer方法
将数据库设计当成一步接一步的过程,并采用一些辅助手段实现每一个过程。
3.数据库设计的步骤
(1)准备工作
主要包括选定参加设计的人员:
分析员、用户、程序员、操作员。
(2)数据库设计的过程
1需求分析阶段。
2概念模型设计阶段。
3逻辑模型设计阶段。
4数据库物理设计阶段。
5数据库实施阶段。
6数据库运行和维护阶段。
第2小节数据库系统需求分析
知识要点
1.需求分析的任务
明确用户的各种需求,确定系统功能。
1重点:
调查、收集与分析用户的信息处理要求、安全性与完整性要求。
2难点:
用户无法准确表达自己的需求,设计人员不易理解用户的真正需求。
2.需求分析的步骤
(1)调查用户需求
1调查与初步分析用户需求
调查组织机构、各部门的业务活动,明确对系统的各种要求,确定系统边界。
2常用调查方法
跟班作业、开调查会、请专人介绍、询问、设计调查表、查阅记录。
(2)分析和表达用户需求
结构化分析(SA)方法具体步骤如下:
1根据调查分析,得到系统高层抽象图。
2分解处理功能和数据,包括分解处理功能和数据。
3将分析结果提交给用户,征得用户的认可。
(3)数据流图
·数据流:
用箭头表示
·加工或处理:
用圆圈表示
·文件:
用双线表示
·外部实体:
用矩形框表示
例1-1设计学校管理信息系统数据流图。
1学校管理高层数据流图(见图1)。
图1
2逐层分解后的数据流图。
假定学校管理信息系统包括学生管理信息系统等,而学生管理信息系统包含学籍管理系统和选课管理系统(见图2)。
图2
3再对学籍管理系统逐层分解,得到学籍管理数据流图(见图3)。
图3
3.数据字典
(1)数据项
数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系}
(2)数据结构
数据结构描述={数据结构名,含义说明,组成:
{数据项或数据结构}}
(3)数据流
数据流描述={数据流名,说明,数据流来源,数据流去向,组成:
{数据结构},平均流量,高峰期流量}
(4)数据存储
数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数据流,组成:
{数据结构},数据量,存取方式}
(5)处理过程
处理过程描述={处理过程名,说明,输入:
{数据流},输出:
{数据流},处理:
{简要说明}}
例1-2建立学籍管理信息系统的数据字典。
1数据项
以“学号”数据项为例,可以描述如下。
数据项:
学号
含义说明:
惟一标识每个学生
别名:
学生编号
类型:
字符型
长度:
8
取值范围:
00000000~99999999
取值含义:
前两位表明该学生所在年级,后6位按顺序编号
2数据结构
以“学生”为例,“学生”是该系统中的一个核心数据结构,可以描述如下。
数据结构:
学生
含义说明:
是学籍管理子系统的主体数据结构,定义了一个学生的有关信息
组成:
学号,班级,姓名,性别,出生日期
3数据流
以“体检结果”为例,数据流“体检结果”可描述如下。
数据流:
体检结果
说明:
学生参加体格检查的最终结果
数据流来源:
体检
数据流去向:
批准
组成:
……
平均流量:
……
高峰期流量:
……
4数据存储
以“学生登记表”为例,数据存储“学生登记表”可描述如下。
数据存储:
学生登记表
说明:
记录学生的基本情况
流入数据流:
……
流出数据流:
……
组成:
……
数据量:
每年3000张
存取方式:
随机存取
5处理过程
以“分配宿舍”为例,处理过程“分配宿舍”可描述如下。
处理过程:
分配宿舍
说明:
为所有新生分配学生宿舍
输入:
学生,宿舍
输出:
宿舍安排
处理:
在新生报到后,为所有新生分配学生宿舍。
要求同一间宿舍只能安排同一性别的学生入住,同一个学生只能安排在一间宿舍。
每个学生的居住面积不小于3m2。
安排新生宿舍的处理时间应不超过15分钟。
第3小节数据库系统概念设计
知识要点
1.概念模型设计概述
(1)概念模型设计
概念模型设计是指将需求分析得到的用户需求抽象为信息结构的过程。
(2)概念模型设计的特点
1能真实、充分地反映现实世界。
2易于理解。
3易于更改。
4易于向关系、网状、层次等各种数据模型转换。
(3)描述概念模型的工具
实体联系模型。
2.概念模型设计方法
1自顶向下:
先定义全局概念模型的框架,再逐步细化。
2自底向上:
先定义局部概念模型,再集成局部概念得到全局概念模型。
3逐步扩张:
先定义核心概念模型,再向外扩充逐步至总体概念模型。
4混合策略:
将自顶向下和自底向上相结合。
3.概念模型设计的ER方法
步骤:
局部概念设计→全局概念设计→全局ER模型优化。
(1)局部概念模式设计
步骤:
1选择局部应用:
选择一个适当层次的数据流图。
2逐一设计局部ER模型:
定义实体、联系,分配属性,确定实体标识符。
例1-3为“学生选课管理系统”设计局部ER模型。
结果见图4。
课程号课程名学分
课程
m
成绩
n
学生
学号班级姓名性别出生日期住址电话电子信箱
图4
例1-4为“学籍管理系统”和“选课管理系统”设计局部ER模型。
“学籍管理系统”局部应用的局部ER模型见图5。
图5
“选课管理”局部应用的局部ER模型见图6。
图6
(2)全局概念模式设计
1合并:
集成为一个整体的数据概念模型,即全局ER模型。
2消除冲突:
属性冲突、命名冲突、结构冲突。
例1-5设计“学校管理信息系统”的初步ER模型。
1班主任实际上也属于教师,也就是说学籍管理系统中的“班主任”实体与学生选课管理系统中的“教师”实体在一定程度上属于异名同义,应将学籍管理系统中的“班主任”实体与选课管理系统中的“教师”实体统一称为“教师”,统一后“教师”实体的属性构成为
教师(职工号,姓名,性别,职称,是否为优秀班主任)
2将“班主任”改为“教师”后,“教师”与“学生”之间的联系在两个局部ER模型中呈现两种不同的类型,一种是学籍管理系统中教师与学生之间的指导联系,一种是学生选课管理系统中教师与学生之间的教学联系。
由于“指导”联系实际上可以包含在“教学”联系之中,因此可以将这两种联系综合为“教学”联系。
3在两个局部ER模型中,“学生”实体属性的组成及次序都存在差异,应将所有属性综合,并重新调整次序。
假设调整结果为
学生(学号,姓名,性别,出生日期,年龄,所在系,年级,平均成绩)
(3)优化
1消除冗余:
合并相关类型实体,消除冗余属性、冗余联系。
2消除冗余的方法:
根据数据字典中数据项间逻辑关系的说明,或用规范化理论。
例1-6消除例1-5的初步ER模型中存在的冗余数据和冗余联系。
结果见图7。
图7
第4小节数据库系统逻辑设计
知识要点
1.逻辑模型设计概述
(1)逻辑模型设计的任务
逻辑模型设计的任务是把概念模型设计阶段设计好的基本ER模型转换为DBMS产品所支持的逻辑模型。
(2)逻辑模型设计的步骤
1将概念模型转化为关系、网状或层次模型。
2将转化来的关系、网状或层次模型转换为特定DBMS支持下的数据模型。
3对数据模型进行优化。
2.ER模型向关系模型的转换
(1)转换内容
将实体、实体间联系转换为关系模式,确定关系模式的属性和主键。
(2)实体转换
一个实体转换为一个关系模式。
(3)二元联系转换
11∶1:
将联系置入任一端实体,并加入另一端实体的主键为外键,也可以合并实体。
21∶n:
将联系置入多端实体,并加入一端实体的主键为外键。
3m∶n:
建立新关系模式,主键为两端实体的主键,两端实体的主键同时为外键。
例学生管理系统中的8个实体和8个联系,可以转换为如下关系模型:
学生(学号,姓名,性别,出生日期,所在系,年级,班级号,宿舍编号,平均成绩,档案号)
宿舍(宿舍编号,地址,床位数)
班级(班级号,地址)
教师(职工号,姓名,性别,职称,班级号,是否为优秀班主任)
教学(职工号,学号)
课程(课程号,课程名,学分,教室号)
选修(学号,课程号,成绩)
教科书(书号,书名,价钱)
教室(教室编号,地址,容量)
讲授(课程号,职工号,书号)
档案材料(档案号,……)
(4)3个或3个以上实体间的多元联系转换
与该多元联系相连的各实体的实体标识符以及联系本身的属性均是关系模式的属性,各实体的实体标识符的组合是关系模式的主键,且各实体标识符同时为外键。
3.数据模型的优化
1确定数据依赖。
2对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。
3确定各关系模式分别属于第几范式。
4确定是否要对它们进行合并或分解。
5对关系模式进行必要的合并或分解。
4.设计用户子模式
用户子模式即数据库系统体系结构的子模式。
(1)使用更符合用户习惯的别名
设计用户子模式时可以重新定义某些属性名。
(2)针对不同级别的用户定义不同的视图
定义不同的视图可以满足系统对安全性的要求。
(3)简化用户对系统的使用
可将复杂查询定义为视图。
第5小节数据库系统物理设计
知识要点
1.确定物理结构
1确定数据的存储结构:
存取时间、存储空间利用率和维护代价。
2设计数据的存取路径:
关系数据库中选择存取路径主要是指确定如何建立索引。
3确定数据的存放位置:
将数据分为易变部分与稳定部分、经常存取部分与不经常存取部分分开存放。
4确定系统配置:
设置存储参数。
2.评价物理结构
定量估算各种方案的存储空间、存取时间和维护代价,选择一个较优的物理结构。
第6小节数据库系统实施
知识要点
1.定义数据库结构
用数据定义语言严格描述数据库结构。
2.数据装载
筛选数据、转换数据格式、输入数据、校验数据。
3.编制与调试应用程序
使用模拟数据编制与调试数据库的应用程序。
4.数据库试运行
功能测试、性能测试。
第7小节数据库系统运行维护
知识要点
1.数据库转储和恢复
定期对数据库和事务日志文件进行备份。
2.数据库安全性、完整性控制
根据用户的实际需要授予不同的操作权限。
3.数据库性能监督、分析和改进
通过数据库系统性能检测工具调整参数,改进数据库性能。
4.数据库重组织和重构造
1数据库运行一段时间后,由于数据的变化使数据库的性能下降,对数据重新安排存储位置,以提高系统性能,即数据库的重组织。
2数据库应用环境变化使实体及联系发生变化,需要适当调整数据库的模式和内模式,即数据库的重构造。
重点难点
●概念模型转换为逻辑模型
教学说明:
●建议对1.3、1.4作重点介绍
实训
实训1ER模型和关系模型的设计
实训名称:
设计教学管理ER模型,并转换为关系模型。
假设教学管理包括学生、课程、教师的信息。
其中,一个学生可选修多门课程,学生学完一门课程都有一个成绩。
每门课程可被多个学生选修,每门课程可由多个教师讲授,每门课程都有一个学分。
一个教师可讲授多门课程。
目的要求:
掌握ER模型的设计方法,并能将ER模型转换为相应的关系模型
操作步骤:
1分别设计学生、课程、教师的局部ER模型。
2合并局部ER模型,形成全局ER模型。
3对全局ER模型进行优化。
4将全局ER模型转换为关系模型。
第3~4课PowerDesigner
教学目的
●掌握创建概念数据模型的方法
●掌握创建物理数据模型的方法
知识点及技能点
●了解PowerDesigner
●会操作PowerDesigner
●熟练创建概念数据模型
●熟练创建物理数据模型
学时要求
●8学时(理论:
4实践:
4)
教学策略或过程
具体讲课内容如下。
第1小节PowerDesigner简介
知识要点
1.PowerDesigner的主要模块
(1)DataArchitect
在需求分析阶段用来绘制ER图,描述系统中的实体和实体之间的关系,即系统的概念数据模型,反映了系统的静态特征。
(2)ProcessAnalyst
用来建立数据流图。
数据流图描述系统应该如何操作和处理各种数据,它反映系统的动态特征,是系统的功能模型。
(3)AppModeler
快速应用生成器,当系统的逻辑模型建立之后,可以使用它快速地生成应用的原型。
(4)ODBCAdministrator
管理系统的各种数据源。
通过该模块,PowerDesigner可以和各种DBMS连接,生成不同的脚本,或进行逆向工程。
2.PowerDesigner输出
(1)概念数据模型(ConceptualDataModel,CDM)
描述系统中的实体及实体之间的关系,反映了系统的静态特征。
(2)物理数据模型(PhysicalDataModel,PDM)
是模型的物理实现细节的详细说明,依赖于特定的数据库管理系统。
(3)面向对象模型(ObjectOrientedModel,OOM)
一个OOM包含一系列包、类、接口和它们的关系。
这些对象一起形成一个应用系统的逻辑的设计视图的类结构。
一个OOM本质上是应用系统的一个静态的概念模型。
(4)业务程序模型(BusinessProgramModel,BPM)
描述系统应该如何操作和处理各种数据,反映系统的动态特征,见教材中的图2-1。
3.PowerDesigner工作环境
(1)浏览区
用树形结构显示各种图表和对象。
其中,Workspace(工作区)为该树形结构的根节点,由PowerDesigner自动生成。
(2)输出区
用于显示各种操作的结果。
(3)结果区
用于显示生成、覆盖和模型检查结果以及设计环境的总体信息。
(4)图表区
用于组织模型中的图表,以图形方式显示模型中各对象之间的关系。
第2小节概念数据模型
知识要点
1.基本概念
1概念数据模型(CDM)的概念:
独立于计算机系统的模型,完全不涉及信息在计算机系统中的表示,只是用来描述某个特定组织所关心的信息结构。
2数据库设计的一般过程:
概念模型→物理模型→定制。
2.CDM操作环境
见教材中的表2-1。
3.创建CDM
File→New→ConceptualDataModel→Model→ModelProperties:
模型名称、代码。
4.实体(Entity)
(1)创建实体
1Entity→单击图形区任意位置→双击图符:
实体名、代码。
2Attributes选项卡:
实体属性。
(2)创建实体标识符
1打开实体→Identifiers选项卡→单击空白行增加标识符:
标识符名称、代码。
2双击标识符→Attributes选项卡→AddAttributes图标:
选择该标识符对应属性。
5.关系(Relationship)
(1)建立关系
1Relationship→指向实体拖动至实体。
2双击关系→General:
关系名、关系代码。
(2)建立依赖关系
RelationshipProperties→Detail→RoyaltyScheduletoTitle角色Dependent复选框。
(3)建立支配关系
RelationshipProperties→Detail→Dominaterole下拉列表框中Author->Picture选项。
(4)建立关联关系
1关系图→单击右键→ChangetoEntity→StANDard。
2双击关联实体→Attributes→AddDataItem工具:
选择属性。
(5)建立自反关系
Relationship工具→指向实体拖动至实体外的空白区域→单击实体。
6.域(Domains)
(1)创建域
Model→Domains:
域名、数据类型、长度。
(2)域的使用
双击实体→Attributes选项卡→Domain:
域。
7.将CDM转换为PDM
PowerDesigner→打开CDM→Tools→GeneratePhysicalDataModel。
第3小节物理数据模型
知识要点
1.PDM的基本概念
PDM是CDM的物理实现,是需要和具体的RDBMS打交道的模型。
2.创建和操作PDM
(1)创建PDM
1PowerDesigner→File→New→PhysicalDataModel→General:
设置所使用的RDBMS。
2Model→ModelProperties:
设置模型的Name、Code、Comment、Author和Version等。
(2)操作PDM
1将PDM加入当前工作区:
在当前工作区中打开PDM。
2从当前工作区中分离PDM:
指向工作区浏览树中的PDM图标→单击右键→DetachfromWorkspace。
3.创建表
Table→单击图形区空白位置→双击新表图符→Genaral:
表名、表代码。
4.定义引用
1Reference→将一个表的图符拖动至另一个表的图符。
2双击引用图符→General:
引用名称、代码。
5.创建索引
双击表图符→Indexes:
索引名、类型。
6.创建视图
View→单击空白处→双击视图图符→SQLQuery:
SQL语句。
7.生成数据库
PowerDesigner→PDM→Database→GenerateDatabase→Scriptgeneration:
脚本文件名。
重点和难点
●使用PowerDesigner生成数据库
实训
实训2生成数据库
实训名称:
生成“学生选课管理系统”数据库。
目的要求:
掌握CDM、PDM的建立方法和数据库的生成方法。
操作步骤:
1假设“学生选课管理系统”ER模型如图4所示,建立该模型的CDM模型。
2将CDM模型转换为PDM模型。
3将PDM模型转换为SQLServer2000的数据库student。
第5课设计应用程序
教学目的
●了解PowerBuilder
●掌握创建应用程序的方法
●掌握PowerBuilder与SQLServer的连接方法
知识点及技能点
●了解PowerBuilder
●了解数据接口
●会操作PowerBuilder
●理解应用程序的创建方法
●理解PowerBuilder与SQLServer2000的连接方法
学时要求
4学时(理论:
2实践:
2)
教学策略或过程
具体讲课内容如下。
第1小节PowerBuilder简介
知识要点
1.简介
(1)版本
PowerBuilder6.0、6.5、7.0、8.0、9.0企业版(Enterprise)
专业版(Professional)
桌面版(Desktop)
(2)特点
1PowerBuilder是一个面向对象的开发工具。
2对