新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > 数据库 > 数据库综合 > 正文:基于DM数据库的“Power Builder“程序开发

基于DM数据库的“Power Builder“程序开发

新客网 XKER.COM 2008-02-02 来源:赛迪网 17313 收藏本文

三、数据库连接程序的设计

为使PowerBuilder应用程序能正确地与数据库或数据源进行连接,必须正确地设置应用程序 所使用的事务对象(如SQLCA)的连接属性。作为最基本、最轻易实现的一种方法,可根据应用程序所连接的数据库及所使用的数据接口的具体情况,直接将所需要的连接参数赋给相应的连接属性。如:通过SQLCA与名为dm的ODBC数据源连接,用户名为SYSDBA,口令为SYSDBA,则相应的赋值语句为:

SQLCA.DBMS="ODBC" 
SQLCA.AutoCommit=FALSE 
SQLCA.DBParm = "ConnectString='DSN=dm;
UID=SYSDBA;PWD=SYSDBA'"(这里要使用至少具有建表权限的用户,
因为PB初次连接一个数据库,会在其上建立五张系统表,
假如没有相应权限会失败。) 
connect using SQLCA;

这种直接赋的方法(或称硬编码方式)虽然简单,但其缺点也很明显,假如所使用的数据库或数据接口发生改变,就不得不修改相应的语句来改变连接参数。因此,最好能够通过一种适当的方法为应用程序提供连接参数,一方面可以根据实际情况随意地修改连接参数,另一方面当参数改变时又可以避免修改程序的麻烦。因篇幅所限、该内容忽略。

综上所述,数据库连接程序的设计要点总结如下:

(1)利用PowerBuilder的数据库配置画笔生成相应的设置文件(初始化文件)。这种方法既易于实现,又可充分保证设置文件的正确性、规范性、全面性与灵活性。需要注重的是,为避免不必要的麻烦,确保应用系统能正常运行,设置文件中DBMS的设置值最好不要随意进行改动。

(2)在登录窗口的Open事件中使用ProfileString()函数与ProfileInt()函数从设置文件中读取有关的连接参数。PowerBuilder提供有一个SQLCA.SRC文件,其内容就是实现对事务对象属性的通用赋值的语句,可直接加以利用,先将其插入到应用程序中,再进行适当的修改即可。

(3)为保证系统的安全,用户名与口令由使用者在登录窗口中通过输入动态提供。

(4)在应用程序中可设计一定的"用户治理"功能,对用户的合法性进行认证,并进行相应有权限设置,进一步增强系统的安全性。

四、数据库操作

1、嵌入式SQL语句

PB脚本中可以直接使用嵌入式SQL与DM通信,PB中的嵌入式SQL语句分为静态语句和动态语句,一般情况下可使用静态的sql,动态的sql一般在静态的sql无法满足的情况下或需要更多的灵活性的情况,考虑使用,如数据定义,表名作为变量传递时,或者条件列名不确定等情况。

例如程序开启阶段添加代码,需要完成假如不存在pbdm这张表即建立该表,可用以下动态SQL实现:

int ls_tag,i;
select count(*) into :ls_tag from 
sysdba.systables where name = 'pbdm';
if ls_tag = 0 then
execute immediate 'create table pbdm 
(a bigint,b binary,c bit,d blob,e char,
f clob,g date,h decimal,i double,j float,
k integer,l smallint,m time,n timestamp,
o tinyint,p varbinary,q varchar)';
end if

需要给该表添加100条记录,使用静态sql,例如:

int temp
select max(a) into :temp from pbdm;
if isnull(temp) then temp=0;
temp=temp 1;
long i
for i = temp to temp 100
insert into pbdm values (:i,'a',0,'sgsdg','w','sgsdg',sysdate,
34634,34634,34634,34634,3464,curtime,curtime,34,'a','2');
st_2.text=string(i)
nextcommit;

共4页: 上一页 [1] [2] [3] [4] 下一页
收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐