《数据库管理系统》课程实验指导书.docx

上传人:b****6 文档编号:7700396 上传时间:2023-01-25 格式:DOCX 页数:76 大小:2.07MB
下载 相关 举报
《数据库管理系统》课程实验指导书.docx_第1页
第1页 / 共76页
《数据库管理系统》课程实验指导书.docx_第2页
第2页 / 共76页
《数据库管理系统》课程实验指导书.docx_第3页
第3页 / 共76页
《数据库管理系统》课程实验指导书.docx_第4页
第4页 / 共76页
《数据库管理系统》课程实验指导书.docx_第5页
第5页 / 共76页
点击查看更多>>
下载资源
资源描述

《数据库管理系统》课程实验指导书.docx

《《数据库管理系统》课程实验指导书.docx》由会员分享,可在线阅读,更多相关《《数据库管理系统》课程实验指导书.docx(76页珍藏版)》请在冰豆网上搜索。

《数据库管理系统》课程实验指导书.docx

《数据库管理系统》课程实验指导书

《数据库管理系统》实验指导书

 

西南交通大学交通运输与物流学院

2013年月日

实验一PowerBuilder集成开发环境、语言及数据库创建与连接实验

一、实验目的

(1)掌握PowerBuilder10.0的启动和退出的方法,熟悉PowerBuilder10.0集成开发环境基本操作;

(2)建立PowerBuilder的工作空间和应用,掌握PowerScript语言及程序设计,掌握常用函数的使用方法、常用控件事件脚本的编写方法;

(3)掌握PowerBuilder数据库的创建与连接方法;创建一个ASA数据库,为其配置ODBC数据源和DBProfile,并连接数据库;创建数据库中的表、管理表及输入数据到表中。

二、实验内容

本实验主要包括如下三个部分的内容。

第一部分

(1)PowerBuilder10.0的启动与退出;

(2)完成教材1.5节简单应用程序实例;

第二部分

(1)创建教材2.8节应用程序实例“计算器”;

(2)创建解一元二次方程的应用程序;

第三部分

(1)创建AdaptiveServerAnywhere数据库;

(2)在PowerBuilder开发环境中连接其他数据库;

(3)在数据库中创建表;

(4)为数据库表指定关键字;

(5)在数据库表中输入数据;

(6)在数据库表中修改数据和删除记录。

三、实验仪器、设备及材料

硬件:

计算机(内存1G及其以上);

软件:

Windows操作系统,PowerBuilder10.0版(或9.0版)

四、实验原理

PowerBuilder是—个基于C/S模式的面向对象的可视化开发工具,各种WINDOWS应用程序中常见的窗口、菜单、控件等在PowerBuilder中都是一个个的对象。

在PowerBuilder中我们还可以创建自己的用户对象。

PowerBuilder一个很大的特点就是提出了数据窗口对象的概念。

与其它对象不同的是数据窗口对象是专门为了访问后台的数据库服务的。

PowerBuilder提供了两种访问后台数据库的方式,一种是通过ODBC标准接口的方式,第二种是通过专用的接口与后台的数据库相连。

ODBC的中文名字是开放式数据库连接,它是微软公司提出的数据库连接标准,使用ODBC方式连接数据库的第一步是创建数据源,比如我们可以利用WINDOWS下控制面板中的“32BITODBC”选项来创建驱动某种数据库的数据源,创建好数据源之后,我们就可以在本地计算机中利用定义好的数据源存取后台数据库中的数据了。

我们还可以通过专用接口同后台的数据库相连,由于专用接口是针对特定的后台数据库管理系统而设计,因此这种方式存取数据的速度要比采用ODBC方式存取数据的速度要快一些,如果我们的应用程序只是针对特定类型的后台数据库,当然是采用专用接口访问后台数据更快一些。

五、实验步骤

5.1第一部分

5.1.1PowerBuilder的启动与退出

启动步骤如下:

在Windows操作系统的“开始”选单中,按照“开始|程序|Sybase|PowerBuilder10.0|PowerBuilder10.0”顺序,找到并单击PowerBuilder10.0,即可启动PowerBuilder10.0,进入集成开发环境IDE。

退出步骤如下,共4种,可任选一种:

(1)单击File选单中“Exit”选单项。

(2)单击工具栏中“Exit”图标按钮。

(3)单击PowerBuilder主窗口右上角的“×”图标。

(4)按Alt+F4组合键。

5.1.2完成一个简单的应用程序的制作实例

通过PowerBuilder制作一个简单的应用程序,初步了解PowerBuilder编程的基本过程。

【例1-1】创建应用程序,计算圆面积。

应用程序的外观如图1-1所示。

图1-1计算圆面积的应用程序外观图

本应用程序的制作过程如下。

首先在硬盘上创建一个目录F:

\workspace,用于存放计算圆面积的应用,然后按照以下具体步骤依次操作。

1.创建应用

(1)创建新的工作空间。

单击New图标,打开“New”对话框;选择“workspace”页,单击“OK”按钮,弹出保存文件对话框,选择到新建的目录F:

\workSpace,输入文件名为“Ex1”。

(2)创建新的应用。

单击New图标,打开“New”对话框;选择“Target”页中的应用“Application”(如图1-2所示),单击“OK”按钮,弹出保存文件对话框,选择到新建的目录F:

\workspace,输入文件名为“calarea”,如图1-3所示,单击完成按钮“Finish”,系统自动用上面输入的应用名称加上扩展名“.pbl”和“.pbt”,组成库名calarea.pbl以及目标文件名calarea.pbt。

图1-2Application

图1-3创建CalArea应用

2.创建窗口和设置窗口属性

(1)创建窗口,设置窗口属性。

单击New图标,打开“New”对话框如图1-4所示。

选择“PBObject”页,双击“Window”图标,创建一个新窗口对象,进入窗口画板,单击中间区域下部的layout页。

在窗口的属性(Properties)卡的General页中,在Title栏中输入窗口标题“圆面积计算”,其余使用默认值。

图1-4创建窗口对象

(2)在窗口上布置控件,设置控件属性,如表1-1所示。

表1-1控件属性

控件名称

控件类型

说明

St_1

staticText

R=

St_2

staticText

Area=

Sle_1

singleLineEdit

Sle_2

singleLineEdit

Cb_1

commandButton

计算

选择“保存”,指定窗口名称为“w_calarea”,系统界面如图1-5所示

图1-5“w_calarea”系统界面

3.编写脚本

(1)编写“计算”命令按钮Clicked事件脚本。

双击cb_1按钮,输入下列脚本:

Decimalr

r=Dec(sle_1.text)

sle_2.text=String(3.14159*r*r)

如图1-6所示:

图1-6编写脚本

(2)编写“应用”的脚本。

编写的PowerBuilder应用程序的入口是“应用”的Open事件(Open事件常被用于编写初始化窗口对象的脚本),所以,在“应用”的Open事件中打开程序主窗口w_calarea。

在树状窗口中,双击“应用”CalArea,弹出应用画板。

这时在事件下拉列表框中对应的是Open事件。

在下面空白的脚本编辑区中编写Open事件的脚本:

Open(w_calarea)

如图1-7所示,保存并关闭应用画板。

图1-7Open事件的脚本

4.运行应用程序

单击“Run”图标,就可以运行计算圆面积的程序了。

运行界面如图1-8所示。

图1-8运行界面

5.2第二部分

5.2.1创建应用程序实例——计算器

【例2】用PowerBuilder10.0制作计算器应用程序。

计算器的外观如图1-9所示。

图1-9自制计算器外观

本应用程序的制作过程如下。

首先在硬盘上创建一个目录F:

\workspace,用于存放计算器的应用,然后按照以下具体步骤依次操作。

1.创建计算器应用

(1)创建新的工作空间。

单击“New”图标按钮,打开“New”对话框;选择“Workspace”页,单击“OK”按钮,弹出保存文件对话框,选择到新建的目录F:

\workspace,输入文件名为“Calculator.pbw”。

(2)创建新的应用。

单击“New”图标按钮,打开“New”对话框;选择“Target”页中的“Application”,单击“OK”按钮,弹出保存文件对话框,选择到新建的目录F:

\workspace,输入文件名为“Calculator”,单击“Finish”按钮,系统自动用上面输入的应用名称加上扩展名“.pbl”和“.pbt”,组成库名Calculator.pbl以及目标文件名Calculator.pbt。

2.创建计算器窗口和设置窗口属性

(1)单击New图标按钮,打开“New”对话框;选择“PBObject”页,双击“Window”图标,创建一个新窗口对象并进入窗口画板。

(2)在窗口的属性(Properties)卡的General页中,在“Title”栏中输入窗口标题“计算器”,将MaxBox和Resizable复选框不选中,其余使用默认值;保存窗口对象,取名为w_calculator。

完成以上步骤后,可在工作空间目录看到如图1-10所示的树形结构。

图1-10树形结构

3.声明几个变量

在“Script”脚本区左上边的下拉列表框中选择“(Declare)”,然后在下面的脚本区中编写代码如下:

Decimaladd1

Chars1

Booleanflag

其中,add1保存中间结果;s1保存按下的运算符;flag是一个标志位,flag=false表示按下的数字是前面数字的一部分,flag=true表示按下的数字是一个新的数字的开始。

如图1-11所示。

4.在窗口中布置显示数值的单行编辑框控件

单击选单“Insert|Control|SingleLineEdit”,然后在窗口上单击,就会出现一个单行编辑框,其名称为sle_1,删除“Text”栏中的“none”,选中“DisplayOnly”属性,在单行编辑框的边沿拖动,调整其尺寸。

图11声明几个变量

5.在窗口中布置10个数字按钮和小数点按钮

首先制作数字“1”按钮,单击选单“Insert|Control|CommandButton”,然后在窗口上单击,就会出现一个命令按钮,其名称为cb_1,在“Text”栏中输入“1”,单击“Other”页,单击该页下部的“Pointer”下拉列表框的“▼”小三角,选择列出的“HyperLink!

”手指形图标,在按钮的边沿拖动,调整好尺寸,然后为按钮编写程序脚本,单击数字“1”按钮,按鼠标右键,弹出子选单,单击“Script”选项(如图1-12所示),光标自动跳到脚本编辑区,可以看到默认的按钮事件为“Clicked”,输入如下代码(如图1-13所示):

IFflagTHEN

sle_1.text=""

flag=false

ENDIF

sle_1.text=sle_1.text+THIS.text

图1-12单击“Script”选项

图1-13为按钮事件编写程序脚本

保存已完成的工作。

由于10个数字按钮以及小数点按钮的“Clicked”事件的脚本都一样,外观也仅有Text属性不同,所以可以用控件完全复制的方法来快速地创建其他按钮。

具体操作是单击数字“1”按钮,然后同时按Ctrl+C组合键复制到剪贴板,再同时按Ctrl+V组合键进行粘贴,这时两个按钮控件重叠在一起,用鼠标将cb_2拖开,并将cb_2的Text改为“2”,数字“2”按钮就制成了,包括脚本也被复制了。

再用“粘贴”的方法,类似数字“2”按钮的制作一样,可以很快地制作出其他数字按钮和小数点按钮。

6.+、-、*、/运算符按钮的制作

首先制作“+”运算符按钮,它与数字按钮仅外观类似(Text属性不同,其余属性相同),脚本完全不同。

可以先用外观复制的办法制作“+”按钮控件,即单击一个数字按钮,然后同时按Ctrl+T组合键,这时,在数字按钮的下方会新出现一个按钮,系统自动为其起名cb_i,i为1、2、3、4…。

将新按钮Text栏中的内容改为“+”号,编辑新按钮的“Clicked”事件脚本如下:

CHOOSECASEs1

CASE'*'

sle_1.text=String(dec(sle_1.text)*add1)

CASE'/'

sle_1.text=String(add1/dec(sle_1.text))

CASE'+'

sle_1.text=String(dec(sle_1.text)+add1)

CASE'-'

sle_1.text=String(add1-dec(sle_1.text))

ENDCHOOSE

Add1=Dec(sle_1.text)

s1=THIS.text

flag=true保存已完成的操作。

由于4个运算符按钮的“Clicked”事件的脚本都一样,所以可以用控件完全复制的方法来创建其他运算符按钮。

操作过程与数字按钮类似。

7.“清除”按钮的制作

用外观复制的方法复制出一个按钮,将其Text栏中的内容改为“清除”,在其“Clicked”事件中输入以下脚本:

sle_1.text=""

Add1=0

s1=''

flag=true

保存已完成的工作。

8.“=”按钮的制作

用Ctrl+C复制“+”按钮,再用Ctrl+V组合键粘贴出一个按钮,将其Text栏中的内容改为“=”,将按钮的“Default”属性选中,这样当按下Enter键时,自动执行“=”按钮的“Clicked”事件的代码。

修改原“Clicked”事件的最后3行脚本,“=”键完整的脚本为:

CHOOSECASEs1

CASE'*'

sle_1.text=String(dec(sle_1.text)*add1)

CASE'/'

sle_1.text=String(add1/dec(sle_1.text))

CASE'+'

sle_1.text=String(dec(sle_1.text)+add1)

CASE'-'

sle_1.text=String(add1-dec(sle_1.text))

ENDCHOOSE

flag=true

s1=''

保存添加了控件的窗口对象,关闭窗口。

9.编写“应用”的脚本

在树状窗口中,双击“应用”Calculator,弹出应用画板。

这时在事件下拉列表框中对应的是“Open”事件。

在下面空白的脚本编辑区中编写“Open”事件的脚本:

Open(w_calculator)

保存并关闭应用画板,计算器已经制作完毕。

单击“Run”图标按钮,就可以运行计算器程序了。

5.2.2创建解一元二次方程的应用程序

参照【例1-1】的创建步骤,思考并独立创建解一元二次方程的应用程序实例,界面如图1-14所示。

运行应用程序,分别输入a、b和c,观察X1和X2的运行结果。

图1-14解一元二次方程应用外观

5.3第三部分

5.3.1创建AdaptiveServerAnywhere数据库

(1)单击工具栏上Database图标按钮。

(2)在弹出的Database画板中,打开Objects子窗口,展开“ODBODBC”项下的Utilities目录。

(3)双击Utilities目录下的“CreateASADataBase”项,如图1-15所示,弹出“CreateAdaptiveServerAnywhereDatabase”对话框。

(4)单击“Browse…”按钮,弹出“CreateDatabase”对话框,在对话框中选择\mypbex目录,在文件名一栏中输入数据库名称“mydatabase.db",单击“保存”按钮,返回“CreateAdaptiveServerAnywhereDatabase”对话框。

(5)使用默认的用户UserID项“dba"和默认的口令Password项“sql",如图1-16所示,单击“OK”按钮,PowerBuilder在\mypbex目录下创建一个ASA数据库mydatebase.db,同时,自动为数据库配置了ODBC和DBProfile,并且已经连接到新建的数据库(可以看到数据库名前的图标上有一个绿色的小勾)。

图1-15创建ASA数据库图1-16设置ASA数据库属性

5.3.2在PowerBuilder开发环境中连接其他数据库

前面创建ASA数据库时,系统自动为我们完成了创建ODBC,DBProfile和连接数据库的工作。

当我们要连接一个外部数据库,比如MicrosoftAccess数据库、SQLServer数据库或Orical数据库,或者在其他地方建立的ASA数据库,这时,就需要完成配置ODBC数据源、配制DBProfile和连接数据库的操作。

下面分别进行说明。

1、配置ODBC数据源

①在PowerBuilder数据库画板的Objects子窗口中,双击ODBC项下Utilities项的"ODBCAdministrator”项,将弹出“ODBC数据源管理器”对话框,如图1-17所示。

②选择“用户DSN”页,在该页的列表框中,列出了已有的数据源,若要修改己有数据源,可以单击“配置”按钮进行修改。

这里,我们需要添加一个ODBC数据源,所以,单击“添加”按钮创建新数据源,将出现标题为“创建新数据源”的对话框,如图1-18所示。

 

图1-17“ODBC数据源管理器”图1-18“创建新数据源”对话框

③在“创建新数据源”的对话框中提供了一个系统支持的数据库驱动程序列表框,选合适的驱动程序。

如果是ASA9.0数据库,就选择“AdaptiveServerAnywhere9.0";如果是McrosoftAccess数据库,就选择“MicrosoftAccessDriver(*.mdb)";如果是SQLServer数据库,就选择“SQLServer",单击“完成”按钮,将弹出ODBC属性配置对话框。

④选择“ODBC”页,在DataBaseSourceName项中输入新的数据源名称,该名称可以和数据库名称相同,也可以不同,这里取为“mydatabase",如图1-19所示。

然后,选择datebase”页,在DatabaseFile栏中输入物理数据库名,可以单击“Browse”按钮定位到物理数据库目录下的数据库文件,如图1-20所示,然后单击“确定”按钮,返回“ODBC数据源管理器”对话框。

不同的数据库类型在选择数据库的操作上会有所不同。

⑤这时可以看到新建的数据源"mydatabase”己经加入到数据源列表中,单击“确按钮,完成ODBC数据源的配置。

2、配置DBProfile

①在PowerBuilder数据库画板的Objects子窗口中,选择“ODBODBC”项,单击鼠标右键,选择“NewProfile”项,将弹出“DatabaseProfileSetup-ODBC”对话框,如图1-21所示。

②选择“Connection"页,在“ProfileName”栏中,输入DBProfile名,这里为mydb_pro;在“DataSource”下拉列表框中,单击“甲”按钮,弹出已经配置的ODBC数据源,这里选择mydatebase;选中UserID和Password,在它们右边的输入栏中分别输入"dba"和“sql"。

③单击“OK”按钮,完成DBProfile的配置。

这时,在“ODBC”目录下,可以看到为数据库新配置的DBProfile"mydb_pro"。

选中“mydb_pro”后单击鼠标右键,在弹出式选单中选择“Properties",会重新弹出“DatabaseProfileSetup-ODBC”对话框,可以修改DBProfile的配置。

图1-19设置ODBC数据源名图1-20设置ODBC数据库图1-21配置DBProfile

3、在PowerBuilder环境中连接数据库

①在Database画板的Objects子窗口中,选择“ODBODBC”项。

②在“ODBC”项下列出的所有可以连接数据库的DBProfile中选择要连接的DBProfile,这里为“mydb_pro"。

③单击鼠标右键,在弹出式选单中选择“Connect”连接数据库。

如果需要断开与数据库的连接,可以在弹出式选单中选择“Disconnect”选单项。

对于连接成功的数据库,会在相应的DBProfile前面的图标上打上“√”标记。

5.3.3在数据库中创建表

在数据库中创建表的步骤如下。

(1)在Database画板的Objects子窗口中,首先连接数据库“mydb_pro"。

(2)展开“mydb_pro”数据库目录,选中‘`Tables",单击鼠标右键,在弹出式选单中单击“NewTable二”,就会出现表设计子窗口。

(3)在表设计子窗口中,分别输入每个字段的名称ColumnName,选择数据类型DateType,数据宽度(字节),小数位宽度,是否允许为空Null,以及默认值。

输入一个字段后,按Tab键或“Enter"键,会产生另一个字段。

(4)输入表中的所有字段后,单击工具栏上“Save”图标按钮,弹出“CreateNewTable”对话框,在TableName栏中输入表名,单击“OK”按钮保存新表,保存后,在Database画板的ObjectLayout子窗口中会出现该表的图形表达方式。

用上述方法,在“mydatabase.db”数据库中,输入表1-2到表1-6。

表1-2Student表

列名

含义

数据类型

宽度

Null

PrimaryKey

stud_id

学号

numeric

8

No

name

姓名

char

10

No

birthday

出生日期

date

Yes

sex

性别

char

2

Yes

nation

民族

char

10

Yes

home

家庭地址

char

40

Yes

tel

家庭电话

char

15

Yes

party

党团员

char

16

Yes

resume

个人简历

varchar

200

Yes

表1-3Subject表

列名

含义

数据类型

宽度

Null

PrimaryKey

subject

课程名称

char

20

No

startdate

开始日期

date

No

teacher

任课老师

char

20

No

subtime

课时数

integer

Yes

表1-4Grade表

列名

含义

数据类型

宽度

Null

PrimaryKey

stud_id

学号

numeric

6

No

subject

课程名称

char

20

No

grade

考试分数

integer

Yes

表1-5Subjectlnfo表

列名

含义

数据类型

宽度

Null

PrimaryKey

subject_id

学科编号

numeric

6

No

belonged

学科类别编号

integer

Yes

titleid

学科名称编号

integer

Yes

important

重点学科

integer

Yes

doctor

博士点

integer

Yes

表1-6SubTitle表

列名

含义

数据类型

宽度

Null

Prima

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 交通运输

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1