新浪博客

几个与PB连接数据库相关的问题

2011-11-08 09:20阅读:
1.Power script 语言里的事务处理对象怎么理解

PowerBuilder程序与数据库之间传递信息的一个结构变量,共有15个成员.你可以详细列表它的所有成员看看它的组成.PB的应用程序会初始化一个全局的结构体变量,SQLCA,当然你也可以自定义一个自己的事务对象.

1 DBMS string 所使用的数据库管理系统的名字,如Sybase,Oracle,ODBC
2 Database string 要连接的数据库名字。
3 UserID string 连接数据库所用的用户名。有的DBMS不需要此项。
4 DBPass string 用户连接数据库的口令。
5 Lock string 这是数据库的保护级别,一般不必给出。
6 LogID string 登录到数据库服务器上的用户名,有的DBMS不需要此项,但SybaseOracle需要指定这个参数。
7 LogPass string 登录到数据库服务器上的用户口令。这个属性可设可不设,但SybaseOracle需要指定口令。
8 ServerName string 数据库服务器名。
9 AutoCommit boolean 指定是否将数据库设置成自动提交所有事务。默认是False,也就是说,必须在应用程序中进行事务管理,并在适当的时候对数据库提交事务。如果选择True,则每个事务都由系统自动提交。
10 DBParm string 用于向数据库传递特殊信息的属性。
11 SQLCode long 指示最近一次SQL操作失败或成功。它的取值为: 返回结果 0 无错误。 -1 出现一个错误。 100 没有检索到数据。
12 SQLNRows long 最近一次SQL操作影响的行数,数据库不同其含义也不同。
13 SQLDBCode long 数据库错误代码。不同的数据库的含义不同。
14 SQLErrText string 相应于SQLDBCode属性中错误码的文字说明。
15 SQLReturnData string 返回DBMS执行SQL的附加信息,不同的DBMS其值不同。

2.我常见到做好的PB程序使用.ini文件来控制与数据库连接,可以方便的进行应用程序移植只需修改其中与数据库连接参数即可,我想问这些.ini文件只能使用手工编写吗,我见到很多.ini文件参数极多不象手写好象是机器生成的,不知道如何生成啊?请大家指教


1、其实PB中在新建---TOOL----FILE EDIT 可以生成(编辑)INI文件。最直接就是工具栏中的EDIT图标。
2、机器生成代码是:点DATABASE图标-----选择连接方式。如:选 MSS MICROSOFT SQL SERVER 右键-NEW PROFILE 按要求填定一些参数后在--PREVIEW中可以看到代码,把它复制到INI文件中就行了。

3.编程经验--PB数据库连接

作者:郭洪建 无法确定网上来源,如有准确首发,请与本站联系

通过这些年的信息系统开发经验,使我对POWERBUILDER的理解更进一步,最近在开发某子系统模块时,遇到了一个奇怪的问题,这里给大家介绍一下.

通常在使用PB和数据库管理系统(DBMS)连接时,使用两种方式:
一、开放数据源接口(ODBC)连接

ODBC是通过支持美国微软公司开放服务结构(WOSA,Windows Open Services Architecture)中的一部分.PB 中通过配置 SQLCA.DBMS=‘ODBC’对象的属性可使应用程序通过ODBC连接到数据库。
ODBC的具体配置包含了数据源、驱动程序类型、缓冲池等各种细节参数。
例子:
SQLCA.DBMS = 'ODBC'
SQLCA.AutoCommit = False
SQLCA.DBParm='C,C'
PWD='',C'

二、专用数据库接口

每个数据库管理系统(DBMS)均提供相应的客户端驱动,为了更好的服务于数据库。
在这里我们使用的是Microsoft sqlserver 2000 的客户端程序。通过设置 SQLCA.DBMS ='MSS Microsoft SQL Server' 使客户端通过专用数据库接口连接到数据库。
该类接口的参数配置除了服务器名、数据库名、LogIdLogPass外还包含了连接协议等用户验证方式等,可通过服务器端或客户端的配置程序进行配置。
SQLCA.dbms= 'MSS Microsoft SQL Server' //接口类型
SQLCA.database= 'master' //数据库
SQLCA.userid= ''
SQLCA.dbpass= ''
SQLCA.logid= 'sa'
SQLCA.logpass= 'xxxx'
SQLCA.serverName= '.\xxx'//服务器名
SQLCA.dbparm= 'Commit'
SQLCA.autocommit= false
以上介绍的是PB与数据库连接时常用的方法。

往往根据不同的应用环境选择连接方式, 在单机环境下多采用的是ODBC连接,因为在发行环节上相对要容易些。在网络环境下多采用专用数据库连接,这样可以提高系统的可靠性与执行效率。专用数据库的发行环节往往要配上相应DBMS客户端的动态连接库(DLL),并把它.
PBASA数据库连接问题!

.连接步骤
1.添加数据源。WINDOWS98----我的电脑---控制面版----ODBC数据源32-----系统DSN---添加---选择你使用的数据库
2.在工具条上点击DB PROFILE 选择已建立好的数据库连接,单击EDIT在弹出的对话框中选PREVIEW里面就是连接数据库的语句,COPYOK了。
.DB_profile写法(lin.comtax例程为例)


tax.ini
[Database]
DBMS=ODBC
Database=test
DbParm=c
.打包所需文件
参看以下文章:


.容易出现的问题及解决方法
导致ASA数据库无法连接的问题有以下几种:
1ODBC配置错误。没有配置数据源,数据库的用户名或口令错误等都会导致数据库无法连接。
解决的办法:检查数据源的配置,如果没有在ODBC中配置数据源则按照向导添加数据源即可;口令错误只需改为正确的即可。
2、连接时提示LOG文件错误。这样的问题大多出现在重装系统后、源码移植到其他系统、数据库文件路径改变之后。
解决的办法:在创建ASA数据库的时候不创建LOG文件,如果已经创建了LOG文件则可以利用PB自带的工具Sybase central来去掉LOG文件和数据

我的更多文章

下载客户端阅读体验更佳

APP专享