PB与数据库的连接方法

合集下载

轻松掌握PB中使用FoxPro数据库的方法

轻松掌握PB中使用FoxPro数据库的方法

⼀、利⽤ODBC联接FoxPro数据库 在Power Builder中,直接访问FoxPro数据库只能通过ODBC⽅式。

在开发环境下,可以直接在PowerBar画板上配置ODBC,联接FoxPro数据库,⽅法如下:单击Configure ODBC⼯具钮在Installed Drivers⽬录框中选择:Microsoft Foxpro Driver (*.dbf) 单击“Create”按钮命名数据源名、选择版本取消“使⽤当前⼯作⽬录”选项单击选定⽬录,选择被联接数据库所在的⽬录确定退出。

通过ODBC⽅式联接的FoxPro的数据库,⼀定要满⾜FoxPro的数据库格式,即数据库⽂件结构必须是:“32字节⽂件描述若⼲个32字节的字段描述结构描述结束符(0D) 记录1,记录2,…… ⽂件结束符(1A)”。

由此看来,传统的DBF数据库⽂件均可通过该⽅式联接。

对于Visual FoxPro环境下建⽴的表(Table),其结构与传统的数据库结构是不同的,它在字段描述结束符(0D)与记录之间加上了⼆百多个字节的内容,但在未纳⼊VFP的数据库(Dbc)之前,其内容为“00”,此时仍可以通过这种⽅式联接,⼀旦纳⼊数据库中,该段字节已被填上了其它内容,⽆法再联接。

在Power Builder应⽤程序中,使⽤事务处理对象来联接数据库,这种事务处理对象,即有默认的SQLCA,⽤户也可以⾃⼰⽣成,以⽅便访问多个数据库。

在程序中使⽤事务处理对象时,⼀般必须先指明DBMS、DbParm两个属性,对于FoxPro数据库,还必须指明 Database、 userid、servername、⼏个属性,这⼀点是与访问其他类型的数据库不同的地⽅。

sqlca.dbms="ODBC" // 指定联接⽅式ODBC sqlca.database="D:\prg\pubdata" // 指定被联接数据库所在⽬录erid="public" // ⽤户识别号,都为 public sqlca.servername="FOXPRO" // 服务器名:均为FOXPROsqlca.dbparm="Connectstring=’DSN=tscxs’" //数据源名 connect using sqlca; // 实施联接 …… 通过对FoxPro数据库的联接,⽤户便可以在Power Builder开发环境下、应⽤程序中使⽤这些数据库,快速地开发出⾃⼰的信息管理系统,实现对这些数据库的维护与管理。

PB中用事物对象连接数据库的方法

PB中用事物对象连接数据库的方法

应用程序与数据库的连接通过事务对象来完成,在建立连接前需要首先给事务对象的相关属性赋值,然后用嵌入式SQL语句CONNECT建立连接。

不同的数据库管理系统使用的事务对象属性也不尽相同。

如果应用程序只访问一个数据库,那么使用PowerBuilder的缺省事务对象SQLCA也就可以了。

SQLCA是个全局对象,在应用程序的任何地方都可以访问。

下面是使用SQLCA与ODBC数据源建立连接的简单示例://设置事务对象属性SQLCA.DBMS="ODBC"SQLCA.DBParm="ConnectString='DSN=Powersoft Demo DBV6;UID=dba;PWD=sql'"//与数据库连接CONNECT USING SQLCA;//检查连接是否成功If SQLCA.SQLCode<0 ThenMessageBox("连接失败",SQLCA.SQLErrText,Exclamation!) End If上面的示例中我们直接把连接参数写死在程序中,这种方式在应用程序需要访问其它数据库时就要修改代码,更合理的方式是利用PowerBuilder的初始化文件PB.INI,下面是更通用的代码:environment env// 保存环境信息string startupfile// 保存初始化文件名/* 得到环境信息*/IF ( GetEnvironment(env) <> 1 ) THENMessageBox( "系统出错", "得不到环境信息,~n终止应用 ..." )HALT //终止应用程序的执行END IF/* 根据当前使用的操作系统选择初始化文件*/CHOOSE CASE env.OSTypeCASE Windows!,WindowsNT!startupfile = "pb.ini"CASE Sol2!, AIX!, OSF1!, HPUX!startupfile = ".pb.ini"CASE Macintosh!startupfile = "PowerBuilder Preferences"CASE ELSEMessageBox( "系统出错", "未知的操作系统,~n终止应用..." )HALTEND CHOOSE/* 根据当前 PB.INI的设置值设置SQLCA属性*/SQLCA.DBMS= ProfileString (startupfile, "database", "dbms","")SQLCA.database = ProfileString (startupfile, "database","database","")erid = ProfileString (startupfile, "database", "userid","") SQLCA.dbpass = ProfileString (startupfile, "database", "dbpass","") SQLCA.logid = ProfileString (startupfile, "database", "logid","") SQLCA.logpass = ProfileString (startupfile, "database","LogPassWord", "")SQLCA.servername = ProfileString (startupfile, "database","servername", "")SQLCA.dbparm = ProfileString (startupfile, "database", "dbparm","") //与数据库连接CONNECT USING SQLCA;//检查连接是否成功If SQLCA.SQLCode<0 ThenMessageBox("连接失败",SQLCA.SQLErrText,Exclamation!) End If需要时,应用程序也可以创建新的事务对象,以适应同时连接到多个数据库管理系统的要求。

PB如何连接ORACLE数据库

PB如何连接ORACLE数据库

PB如何连接ORACLE数据库如果你已经是个PowerBuilder高手,那么下面的东西对你来说毫无价值,你大可不必再看下去,如果你刚刚步入PowerBuilder的殿堂,那么下面的东西对你来说可能有点价值,你应该看一看。

作为一个优秀的客户端开发工具,PowerBuilder必然需要与大型的数据库相连接,尽管许多资料上都介绍了如何通过ODBC或者PowerBuilder自带的DB Profile或者专用接口连接上数据库,但仍然有许多使用者按此方法却无法连接上数据库,这方面的原因可能是P owerBuilder本身的原因,比如在安装PowerBuilder时的选项、ODBC的版本之类;也可能是在安装客户端的Oracle、Sybase、Informix、SQL Server等软件上的问题,下面就从最根本的ODBC配置开始,教你一步步如何连接上数据库。

ODBC数据源的配置进入控制面板,打开ODBC数据源(32位),如图1所示,点击“ADD”按钮,进入OD BC数据源的配置面板,如图2所示:选择“Oracle ODBC Driver”一项,注意当前版本号为“8.00.0400”,如果你的操作系统中安装的是Oracle7,则相应的版本号会不同。

提醒一点:在Windows98操作系统上是无法安装Oracle8.0.4的(只能安装Oracle7.2.3),Oracle8.0.5则没有试过。

因而会有一些使用者在Windows98系统上无法正常配置ODBC数据源,因为Windows98本身自带的OD BC数据源已经比Oracle7数据源版本要高,无论你怎样配置ODBC,系统总会提示你要安装一个更高版本的Oracle,自然你就无法配置ODBC了,有一个解决方法就是用PB7第二张光盘上的ODBC安装程序覆盖系统中的ODBC,或者把你的操作系统改为Windows95/97算了。

然后进入“Oracle8 ODBC Driver Setup”设置,在“Data Source Name”一项中随便输入一个名字,在“Data Source Service Name”一栏中输入Oracle连接数据库的字符串名,这可以在你安装的Oracle目录中的Tnsnames.ora文件中查看到(Oracle7安装路径为“ORAWIN95\NETWORK\ ADMIN”;Oracle8安装路径为“ora win95\NET80\ADMIN”),或者你通过“SQL Net Easy Configuration”新添加一个数据库连接配置,将配置中的字符串填入即可,其他的就不必再填入,避免出现画蛇添足之错,反而连接不上数据库了。

PB中连接Access数据库的三种方法

PB中连接Access数据库的三种方法

PB中连接Access数据库的三种方法PB中连接Access数据库的三种方法方式一:SQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "ConnectString='driver=Microsoft Access Driver (*.mdb);DBQ=c:\foodmart.mdb'"CONNECT;IF SQLCA.SQLCode <> 0 THENMessageBox("数据库连接失败","请与管理员联系。

错误号:" + String(SQLCA.SQLCode) + "~r~n错误原因:" + SQLCA.SQLErrText) RETURNelseMessageBox("数据库连接成功","现在进入系统... ...")end if方式二:SQLCA.DBMS = "OLE DB"SQLCA.AutoCommit = FalseSQLCA.DBParm = "PROVIDER='Microsoft.Jet.OLEDB.4.0',DATASOURCE='C:\foodm art.mdb'"CONNECT;方式三:建立DSN,通过ODBC连接。

这个就不用多说了。

例如:// Profile my_assSQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "ConnectString='DSN=my_ass'"catalog tables could not be created and are not available for use问题解决方法:这种情况多见于从SQL server 转到Access 数据库,用ODBC连接的情况把sqlserver数据库里的五个‘pb’字母开头的数据表导入到access数据库里去,再连接就不提示了关于动态注册ODBC数据源关于动态注册Access数据源//***********************************************// 函数名: gf_setodbc_access// 功能: 完成access数据源的注册功能// 输入参数:// as_database 数据库名// (即Access数据库文件名字,不含扩展名)// as_path 数据库文件所在的目录// 返回值:// true 表示自动配置成功// false 表示自动配置失败// 设计者: Adamswater// 完成时间: 2005年6月//***************************************************boolean lb_rtnstring ls_root,ls_root_dsn,ls_root_Jet,ls_root_Enginesinteger li_rtnstringls_dsnname,ls_dbfullname,ls_driver,temp,ls_version string ls_syspathenvironment envls_syspath = Space( 40 )//获得*作系统的目录GetSystemDirectoryA(ls_syspath,60)ls_driver = ls_syspath + "\odbcjt32.dll"lb_rtn = truels_root = "HKEY_LOCAL_MACHINE\software\odbc\odbc.ini"//数据源名字为:文件名字+“_DT”ls_dsnname = as_database + "_DT"ls_root_dsn = ls_root + "\" + ls_dsnnamels_root_Engines = ls_root_dsn + "\" + "Engines"ls_root_Jet = ls_root_Engines + "\" + "Jet"ls_dbfullname = as_path + "\" + as_database + ".mdb"//注册数据源的名字li_rtn = registryset(ls_root,ls_dsnname,regstring!,"")if li_rtn= - 1 thenreturn falseend if//注册数据库名字li_rtn = registryset(ls_root_dsn,"DBQ",regstring!,ls_dbfullname) if li_rtn= - 1 thenreturn falseend if//注册数据库驱动程序li_rtn = registryset(ls_root_dsn,"Driver",regstring!,ls_driver) if li_rtn= - 1 thenreturn false。

在PB中连接DBF数据库的方法

在PB中连接DBF数据库的方法

在PB中使用DBF数据库的方法1. ODBC配置凡是要用到医保的工作站,都要进行ODBC的配置。

在配置ODBC前,请先在指定的地方创建一个文件夹。

具体位置可以和医保中心商量。

但是必须注意:工作站必须要能访问到此文件夹!为方便以下文档的描写,假设我的这个文件夹建在:\\bsoftftp\bsoft-jt\云南禄丰(注:以下图片为Windows 2000中的图片,与Win98可能会有些出入)✧ 1.1 在Windows的控制面板中,找到ODBC数据源:✧ 1.2 双击“数据源(ODBC)”,出现“ODBC数据源管理器”对话框:✧ 1.3 单击“添加…”按钮,选择数据源的驱动程序:Microsoft FoxPro VFP Driver (*.dbf):✧ 1.4 点完成,出现“ODBC Visible FoxPro Setup”对话框,填入以下数据:Data Source Name:YBJKDescription :医保接口DataBase Type :选Free Table directory点“Browse …”按钮点“网络(W)…”,选择上面创建的目录,点“完成”:点“确定”点“OK”,即完成对ODBC的配置。

2. 建表2.1 DBF文件的建立如果表已建好,则可省去这一步。

由于表是DBF文件,故只能在PB中创建。

在PB的“DB Profile”(数据库配置)中,选择ODBC,点“NEW”,如以下图片填写各内容:(注:连接时,会出现一个错误提示,如下图。

可以点“确定”不管此提示,不影响连接。

)连接以后,就可以用PB建表。

注:PB生成表(即DBF文件)以后,放于PB当前目录下。

所以在建好表结构后,要把这两个文件COPY到上面指定的目录:\\bsoftftp\bsoft-jt\云南禄丰。

PB如何连接Oracle数据库

PB如何连接Oracle数据库

PB如何连接Oracle数据库PB如何连接Oracle数据库PB如何连接Oracle数据库如果你已经是个powerbuilder高手,那么下面的东西对你来说毫无价值,你大可不必再看下去,如果你刚刚步入powerbuilder的殿堂,那么下面的东西对你来说可能有点价值,你应该看一看。

作为一个优秀的客户端开发工具,powerbuilder必然需要与大型的数据库相连接,尽管许多资料上都介绍了如何通过odbc或者powerbuilder自带的db profile或者专用接口连接上数据库,但仍然有许多使用者按此方法却无法连接上数据库,这方面的原因可能是powerbuilder本身的原因,比如在安装powerbuilder时的选项、odbc的版本之类;也可能是在安装客户端的oracle、sybase、informix、sql server等软件上的问题,下面就从最根本的odbc配置开始,教你一步步如何连接上数据库。

odbc数据源的配置进入控制面板,打开odbc数据源(32位),如图1所示,点击add 按钮,进入odbc数据源的配置面板,如图2所示:选择oracle odbc driver 一项,注意当前版本号为8.00.0400 ,如果你的操作系统中安装的是oracle7,则相应的版本号会不同。

提醒一点:在windows98操作系统上是无法安装oracle8.0.4的(只能安装oracle7.2.3),oracle8.0.5则没有试过。

因而会有一些使用者在windows98系统上无法正常配置odbc 数据源,因为windows98本身自带的odbc数据源已经比oracle7数据源版本要高,无论你怎样配置odbc,系统总会提示你要安装一个更高版本的oracle,自然你就无法配置odbc了,有一个解决方法就是用pb7第二张光盘上的odbc安装程序覆盖系统中的odbc,或者把你的操作系统改为windows95/97算了。

PB程序移植后的数据库连接问题

PB程序移植后的数据库连接问题

PB程序移植后的ASA数据库连接问题pb中创建一个ASA数据库,如存放在E盘,把整个程序复制到
另外一台机器中的D盘(或其他非E盘的路径),连不上数据库。

连接时提示:cannot connect to the database sever: the specified database is invalid.
最简单的解决方法:
程序移植后数据库的存放路径和原路径相同则可以连接数据库。

最好的预防方法:
建立ASA数据库的时候不使用LOG,则移植后即使db文件的路径不相同,也可以正常连接数据库。

默认是有对勾的,去掉对勾才不会出现以上的问题。

复杂的解决方法一:
找到PB安装后的程序位置,找到如下...\Sybase\SQL Anywhere 8\win32里面的DBLOG.EXE,把dblog.exe复制到你的db文件目录下使用
使用cmd,运行如下命令:
使用格式为:dblog [ options ] database-file
其中,[ options ]为-t log-name是设置事务日志名 database-file是数据库文件名。

例如dblog -t zichan.log zichan.db
设置事务日志文件的名称(-t) 此选项设置新的事务日志的文件
在设置时:
你的log-name为相对路径,或是没有路径只有一个文件名,那么你的db和log文件随便复制到什么路径下,都可以用了。

如果你的log-name为绝对路径,那你就可以限制你的用户的安装路径了!
复杂的解决方法二:
前面方法一相同,打命令时使用dblog -n 数据库文件名,删除数据库日志文件。

pb mysql 方法

pb mysql 方法

pb mysql 方法使用PB MySQL 方法进行数据库管理引言:在现代的互联网时代,数据的管理和存储变得越来越重要。

而MySQL作为一种常用的关系型数据库管理系统,被广泛应用于各种网站和应用程序中。

本文将介绍如何使用PB MySQL方法进行数据库管理,包括数据库的创建、表的设计、数据的插入、查询和更新等操作。

一、创建数据库在PB MySQL中创建数据库非常简单,只需要使用CREATE DATABASE语句即可。

例如,要创建一个名为"mydatabase"的数据库,可以使用以下语句:```sqlCREATE DATABASE mydatabase;```创建数据库时,还可以指定字符集和排序规则等参数,以满足特定的需求。

二、设计表结构在数据库中,数据以表的形式进行存储。

在PB MySQL中,可以使用CREATE TABLE语句来创建表,并指定表的字段、数据类型、约束等信息。

例如,要创建一个名为"users"的表,包含id、name、age和email字段,可以使用以下语句:```sqlCREATE TABLE users (id INT PRIMARY KEY,name VARCHAR(50),age INT,email VARCHAR(50));```在创建表时,可以根据实际需求设置主键、唯一约束、非空约束等,以保证数据的完整性和一致性。

三、插入数据在数据库中插入数据是非常常见的操作。

在PB MySQL中,可以使用INSERT INTO语句来插入数据。

例如,要向"users"表中插入一条记录,可以使用以下语句:```sqlINSERT INTO users (id, name, age, email)VALUES(1,'John',20,'****************');```可以一次性插入多条记录,只需要在VALUES子句中添加对应的值即可。

PB用ODBC连接数据库(SQL Server)和用专用接口连接数据库的区别

PB用ODBC连接数据库(SQL Server)和用专用接口连接数据库的区别

问题1:PB用ODBC连接数据库(SQL Server)和用专用接口连接数据库的区别?我发现PB用专用接口连接数据库时,对Varchar型字段最多只能存200多个汉字,但是用ODBC 连接可以存4000个,可达到Varchar(8000)的最大长度,这是什么原因,怎么改进?专用接口连接数据库时,对SQL Server的存储过程支持要比ODBC 好,如果用ODBC 连接,对带参数的数据窗口(采用存储过程),没法传递参数,但是专用接口连接数据库却可以。

问题2:关于PB动态生成数据窗口的问题。

比如用如下代码生成一个数据窗口,在编辑时每一个编辑框都会出现一个兰色的背景框或者底框,怎么去掉?==========================================================string ERRORS, sql_syntaxstring presentation_str, dwsyntax_strsql_syntax = "SELECT emp_data.emp_id,"&+ "emp_data.emp_name FROM emp_data "&+ "WHERE emp_data.emp_salary > 45000"presentation_str = "style(type=grid)"dwsyntax_str = SQLCA.SyntaxFromSQL(sql_syntax, &presentation_str, ERRORS)IF Len(ERRORS) > 0 THENMessageBox("Caution", &"SyntaxFromSQL caused these errors: " + ERRORS)RETURNEND IFdw_1.Create( dwsyntax_str, ERRORS)IF Len(ERRORS) > 0 THENMessageBox("Caution", &"Create cause these errors: " + ERRORS)RETURNEND IFDW_1.settransoject(sqlca)dw_1.retrieve()==========================================不能贴图,大家可以自己实验一下,应该是生成那个SQL的字符串sql_syntax不够细致,怎么样能使数据窗口漂亮些。

PB11.5连接数据库主要有以下四种方法

PB11.5连接数据库主要有以下四种方法
PB11.5连接数据库主要有以下四种方法
一、使用 SNC SQL Native Client 方式连接数据库
sqlca = create transaction
SQLCA.DBMS = "SNC SQL Native Client(OLE DB)" //接口说明
SQLCA.LogId = "sa" //数据库管理员ID
SQLCA.LogPass = "" //数据库管理员密码
SQLCA.ServerName = "." //数据库服务器名称或者IP地址
SQLCA.DBParm = "Database='techmager'" //要连接的数据库名称
sqlca.autocommit=true //设置是否自动提交
connect using sqlca; //执行数SQLCA.DBMS = "" //接口说明
SQLCA.LogId = "sa" //数据库管理员ID
SQLCA.LogPass = '' //数据库管理员密码
connect using sqlca ; //执行数据库连接
使用 连接数据库方式连接数据库时,客户端电脑需要安装dotNetFramework 运行环境才能成功连接到数据库
四、使用 ODBC连接数据库
SQLCA.DBMS = "ODBC" //接口说明
connect using sqlca; //执行数据库连接
使用ODBC接口方式连接数据库,客户端电脑必须配置ODBC数据源,才能连接数据库
SQLCA.AutoCommit = False //设置是否自动提交

PB简单应用——连接数据库简单操作

PB简单应用——连接数据库简单操作

1.打开sybase数据库,选择工具---创建数据库,弹出创建数据库向导,选择数据库保存位置,如下图:单击完成,成功创建数据库,如下图:2.右键单击“表”,选择新建表,在弹出的对话框中填入表名,并点击完成,创建一个表,如图所示:3.在主键中填上“ID”,其标示城市编号,选择数据类型。

在空白处右键单击,选择新建——列,新建一列,并填入相应的值,如下图所示:保存后,点击“数据”选项3.在空白处右键单击,选择新建行,向表中添加适当的内容,如下图:保存数据库。

4.在开始中打开SQL anywhere ODBC管理器,点击添加按钮,选择anywhere10,点击完成。

弹出如图所示的对话框:在数据源名中填入刚才建的数据库名:test,单击数据库选项卡,点击浏览找到test数据库文件并选取,进入登陆选项卡,填入相应的ID和口令(预先设定好的数据库口令),单击确定,添加数据库。

在ODBC管理器中选择刚才添加的数据库,点击配置,点击测试连接,测试器连接是否成功。

点击确定完成连接。

5.打开PB,选择new workspace,取文件名:city,点击保存。

6.在新建的workspace上右键单击,选择NEW 打开其对话框,如图:选择Application单击OK。

7选择左侧窗口的cityintroduce双击,在右侧打开的界面中,输入以下代码://profile psiSQLCA.DBMS="ODBC"SQLCA.AutoCommit=FalseSQLCA.DBParm="connectstring='DSN=test;UID=dba;PWD=sql'"CONNECT;if SQLCA.sqlcode<>0 thenmessagebox("提示","数据库连接失败!")elseopen (w_city)end if其作用是判断数据库是否连接成功。

PB基本操作手册

PB基本操作手册

第1章PB通过专用驱动连接Oracle 前提:安装Oracle数据库客户端,配置客户端服务名,连接Oracle服务器运行PB后点击打开如下界面,进行配置:自定义:数据库在PB中的名称——Profile Name填入:A、Oracle客户端服务名——Server(PB6.5需要在服务名前加@)B、user/password(数据库登录名/密码)在System选项卡,配置Table Owner(很重要,否则可能无法连接)第2章PB通过JDBC连接数据库前提:安装JDK,并配置JDBC将MYSQL的JDBC连接包(mysql-connector-java-5.0.7-bin.jar)放入JA V A 安装目录的Lib目录下,并配置Class_Path类路径(使JA V A可以找到这个包)。

运行PB后点击打开如下界面,进行配置:在PB中新建一个JDBC连接自定义:JDBC在PB中的名称——Profile Name填入:A、JDBC驱动程序类名(存在与mysql-connector-java-5.0.7-bin.jar包中)——Data SourceB、URL(包含MYSQL的服务器IP、Port、DB--数据库名:hao)——URLC、username/password(数据库登录名/密码)这样PB就可以连接到JDBC,并访问远程IP地址上的数据库服务器了。

第3章PB通过ODBC数据源连接数据库前提:配置ODBC数据源(例如:配置SQL Server数据源),连接数据库服务器(例如:连接SQL Server数据库服务器)运行PB后点击打开如下界面,进行配置:在PB中新建一个ODBC连接自定义:ODBC数据源在PB中的名称——Profile Name 填入:A、选择配置好的ODBC 数据源——Data SourceB、user/password(数据库登录名/密码)切换到System选项卡,填写Table Owner(就是登录名)这样PB就可以连接到ODBC,并访问远程数据库服务器了。

PB数据库连接的问题

PB数据库连接的问题

PB数据库连接的问题connection failed:specified database is invalid一个asa数据库的db文件,移植到别的机器上的时候,使用的目录并不一样,所以就出错了用odbc连接时出标题中的提示,使用一下方法解决通过课程设计实践,对PB中的数据库连接总结如下:在用PB时,我们经常使用它本身携带的数据管理系统Adaptive server anywhere (ASA),并用它来创建(ASA)数据库,在创建数据库后,当我们将数据库移到其他文件夹或者其他电脑时,怎样去连接数据库呢?分为两种情况:第一种:在建该数据库时,没有默认创建数据库日志文件:如下在创建(ASA)数据库时,把那个允许创建日志前面的钩去掉连接步骤如下(1)配置ODBC数据源。

1.双击ODBC中Utilities中的“ODBC Administrator”项2.打开的窗口中,点击“用户DNS”页,点【配置】修改已有数据源或者点【添加】创建新数据源,以新建为例。

填写ODBC中“Date source name”选择Database中“Datebase file”路径,然后点击【确定】完成数据源创建。

(2)配置DB Profile。

1. 右击“ODB ODBC”项,选择“New profile”选择“Connection”选项卡,填写“Profile Name”,名称自定;在“Database Source”中选择刚才创建的数据源。

如果已经设置过,在“user id”、“password”具体填写。

点击【OK】(3)连接数据库。

如图所示,右击刚才创建的“Profile Name”——Admin,选择“connect”即可。

第二种:如果在建数据库时,默认创建数据库日志文件:在建立数据库的时候,勾选了Use Transaction Log选项,导致创建了日志文件。

那么就需要使用数据库的管理工具Sybase Central,将数据库文件与LOG 文件的关联去掉。

浅谈PB与数据库的连接

浅谈PB与数据库的连接

浅谈PB与数据库的连接作者:王先桃杨志平来源:《教师·中》2011年第02期摘要:一个信息系统的各个部分能否紧密地结合在一起以及如何结合,关键在于数据库。

为了增强由PowerBuilder搭建的信息系统平台的独立性,让该平台在任意计算机内都能正常运行,需要通过代码来实现数据库的动态连接。

关键词:PowerBuilder;数据库;SQL Server 2000由PowerBuilder(简称PB)应用程序构成的信息系统是提供信息、辅助人们对环境进行控制和决策的系统,其核心和基础是数据。

[1]一个信息系统的各个部分是独立而分离的,它们能否紧密地结合在一起以及如何结合,关键就在于数据库。

因此在用PB搭建信息系统平台时,就需要与数据库建立连接。

下面将详细讲述PB与SQL Server 2000中的sjk数据库连接的方法及过程。

一、准备阶段在PB与SQL Server 2000数据库之间建立连接之前需要做如下准备:(1)安装和配置PowerBuilder和SQL Server 2000。

(2)在SQL Server 2000中创建所需要连接的数据库(这里我们创建的数据库名为sjk),并在数据库中建立所需的表格。

将数据库内容生成sql脚本并保存起来,这里我们保存为shujuku.sql文件存储在F盘。

二、创建数据库配置文件数据库配置文件(Database Profile)是一组保存在PowerBuilder开发环境初始化文件(定义与特定数据库的连接)中的命名参数集合,在连接每个数据库前必须创建相应的数据库配置文件。

[2]创建数据库配置文件的基本步骤如下:(1)在PowerBuilder工具栏上选中DB Profile按钮,出现Database Profiles对话框,其中列出了已经安装的数据库接口。

(2)单击接口名,这里我们选择MSS MS SQL Server 6.x 让其高亮显示。

(3)单击New按钮,出现Database Profile setup 对话框。

pb 连接cache数据库 方法 -回复

pb 连接cache数据库 方法 -回复

pb 连接cache数据库方法-回复如何连接Cache数据库方法引言:Cache是一种面向对象的多模式数据库,其主要特点是速度快、吞吐量高、可用性强,并提供了一套强大的SQL查询引擎。

在本文中,我们将逐步介绍如何连接Cache数据库的方法。

第一步:安装Cache数据库1. 首先,您需要从InterSystems官方网站上下载Cache数据库的安装包,并按照安装向导的指示进行安装。

可以选择按照默认设置安装,也可以自定义设置。

2. 安装完成后,您需要启动Cache数据库。

在启动界面上,您可以选择创建一个新的数据库或者连接到一个已有的数据库。

第二步:设置数据库连接参数1. 打开Cache数据库管理工具,找到数据库连接配置界面。

具体操作方式因版本而异,可通过阅读相关文档或搜索相关教程来获得指导。

2. 在数据库连接配置界面中,您需要填写以下参数:- 主机名:数据库所在的主机IP地址或主机名。

- 端口号:Cache数据库的监听端口号,默认为1972。

- 用户名和密码:您的Cache数据库登录凭证。

3. 完成参数填写后,保存并测试连接,确保连接设置正确。

第三步:选择数据库连接方式Cache数据库支持多种连接方式,包括本地连接和远程连接。

根据您的需求,选择适合的连接方式。

1. 本地连接:如果您的应用程序与Cache数据库运行在同一台机器上,可以选择本地连接。

在本地连接模式下,您只需要填写正确的数据库连接参数,即可直接连接到数据库。

2. 远程连接:如果您的应用程序与Cache数据库运行在不同的机器上,需要进行远程连接设置。

远程连接需要在数据库服务器和客户端之间建立网络连接,确保网络连通性。

具体的远程连接设置可以参考官方文档或相关教程。

第四步:选择合适的编程语言和数据库驱动Cache数据库支持多种编程语言和数据库驱动,您可以根据自己的需求选择适合的工具。

1. 对于Java开发者,可以选择使用官方提供的Cache Java连接器。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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不需要此项,但Sybase和Oracle 需要指定这个参数。

7 LogPass string 登录到数据库服务器上的用户口令。

这个属性可设可不设,但Sybase和Oracle需要指定口令。

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 = FalseSQLCA.DBParm="ConnectString='DSN=xxx_dsn;UID=xxx;PWD="',ConnectOption='SQL_DRIVER_C ONNECT,SQL_DRIVER_NOPROMPT'"二、专用数据库接口每个数据库管理系统(DBMS)均提供相应的客户端驱动,为了更好的服务于数据库。

在这里我们使用的是Microsoft sqlserver 2000 的客户端程序。

通过设置SQLCA.DBMS ="MSS Microsoft SQL Server" 使客户端通过专用数据库接口连接到数据库。

该类接口的参数配置除了服务器名、数据库名、LogId、LogPass外还包含了连接协议等用户验证方式等,可通过服务器端或客户端的配置程序进行配置。

SQLCA.dbms= "MSS Microsoft SQL Server" //接口类型SQLCA.database= "master" //数据库erid= ""SQLCA.dbpass= ""SQLCA.logid= "sa"SQLCA.logpass= "xxxx"SQLCA.serverName= ".\xxx"//服务器名SQLCA.dbparm= "CommitOnDisconnect='No'"SQLCA.autocommit= false以上介绍的是PB与数据库连接时常用的方法。

往往根据不同的应用环境选择连接方式, 在单机环境下多采用的是ODBC连接,因为在发行环节上相对要容易些。

在网络环境下多采用专用数据库连接,这样可以提高系统的可靠性与执行效率。

专用数据库的发行环节往往要配上相应DBMS客户端的动态连接库(DLL),并把它存放在应用程序当前路径,或存放在%SYSTEM%下面。

我在开发中用到了对BLOB类型的数据进行存取,大家都知道POWERBUILDER 对BLOB字段的支持是有限的,每次只能处理32KB的数据块,如果一个文件大于32K必须编写相应的程序进行处理。

当时的开发环境是PWOERBUILDER 9.0 + MS SQL SERVER 2000 +WINDOWS2000 。

当通过ODBC连接数据读取BLOB字段时,通过MESSAGEBOX弹出的字节数,观察到只要超过32K的文件出现,LEN(BLOB)就会出错,始终返回是32K字节的长度。

当时很令人费解,随即怀疑系统问题,检查病毒,重新安装相应的开发环境,结果依旧,这才怀疑到ODBC可能存在问题,因为微软是问题专家,同时也是解决问题的专家。

当通过SQLSERVER 专用接口连接后,一切正常。

由此证明了ODBC 与专用数据库接口之间存在着一定的问题。

由此可说明各种同类技术之间的细微差别,可能会给我们带来意想不到的问题。

在开发时还需谨慎、全面的考虑所用技术的可靠性。

PB与ASA数据库连接问题!PB与ASA数据库连接问题!一.连接步骤1.添加数据源。

WINDOWS98中----我的电脑---控制面版----ODBC数据源32位-----系统DSN---添加---选择你使用的数据库2.在工具条上点击DB PROFILE 选择已建立好的数据库连接,单击EDIT在弹出的对话框中选PREVIEW里面就是连接数据库的语句,COPY就OK了。

二.DB_profile写法(以的tax例程为例)tax.ini[Database]DBMS=ODBCDatabase=testDbParm=connectstring='dsn=sybase_lin;UID=dba;PWD=sql'三.打包所需文件四.容易出现的问题及解决方法导致ASA数据库无法连接的问题有以下几种:1、ODBC配置错误。

没有配置数据源,数据库的用户名或口令错误等都会导致数据库无法连接。

解决的办法:检查数据源的配置,如果没有在ODBC中配置数据源则按照向导添加数据源即可;口令错误只需改为正确的即可。

2、连接时提示LOG文件错误。

这样的问题大多出现在重装系统后、源码移植到其他系统、数据库文件路径改变之后。

解决的办法:在创建ASA数据库的时候不创建LOG文件,如果已经创建了LOG文件则可以利用PB自带的工具Sybase central来去掉LOG文件和数据库文件的关联。

操作步骤如下:a)启动Sybase central在左边的树型目录中选择Utilities;b)双击右边出现的条目中的change log file settings,直接next;c)点Browse选择需要去除log文件的数据库文件,选好后next;d)这里你会看到一些数据库的信息,log文件名,文件大小等。

next;e)去掉Maintin the following transaction log file前面的对勾,Finish;f)配置ODBC连接数据库就可以了。

3、数据库文件损坏。

此类错误一般不常见,可能由于病毒破坏或误操作引起。

解决的办法:如果以前有备份用备份文件覆盖原文件即可,如果没有备份文件就只能重新建库了!在pb中通过OLE DB连接到ASA数据库的步骤如下:在命令提示符下键入如下命令,启动ASADEMO:dbsrv7 asademo -x tcpip -n asademo("asademo" - 你选择运行的数据库. 确定你没有正在运行一个同名的数据库,否则会出错)有两个方法通过OLE DB 连接到ASA Server:1) OLE DB/ODBC bridge对于这种连接,你必须在数据库参数中,指定有效的ODBC 数据源,连接的脚本如下: // Profile asa_oledbSQLCA.DBMS = "OLE DB"SQLCA.LogPass = "sql"SQLCA.LogId = "dba"SQLCA.AutoCommit = FalseSQLCA.DBParm = "PROVIDER='ASAProv',DATASOURCE='asa'"2) OLE DB (不需要配置ODBC)你可以通过一个扩展名为.udl的单独的文件,提供连接信息,在OLE DB中访问数据.这个文件与Microsoft DataLink (.udl) file 类似. 你必须在系统中安装Datalink API 以便于创建和使用.udl 文件.创建.udl文件的方法:在当前目录里的空白处单击鼠标右键,选择新建文件,选择Microsoft Data Link.如果没有创建Microsoft Data Link 的选项,需要创建一个文本文件,然后更改扩展名为.udl.双击这个文件,添加连接信息.详情请访问 搜索Data Link(此处原文有乱码,具体内容不详).在pb中使用.udl 文件时,要确认在数据库中已经创建了Catalog Tables (由pbcat...名字开头,然后用这几张表存放一些PB中的信息,如果这几张表无法创建,就会出现出错信息).你可以通过连接到系统中已有的ODBC 数据源. 如果这些表不存在,就会提示Catalog Tables没有被创建.用以下信息来创建.udl文件:Provider Tab:Select "Adaptive Server Anywhere Provider"Connection Tab:Location: eng=asademo;dbn=asademo;Links=TCPIP{};Select radio button forpb连接MS SQL Server问题!一.连接步骤1)服务器安装SQL Server并启动,创建数据库。

相关文档
最新文档