浅谈PB与数据库的连接
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不够细致,怎么样能使数据窗口漂亮些。
PB与数据库的连接方法
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其值不同。
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数据库如果你已经是个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如何连接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 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数据连接使用步骤
使用步骤:1.创建事务对象,默认为SQLCA,可以自己定义一个全局事务变量;2.指定该事务对象的属性,连接到数据库;(一般在Application 的Open事件中处理),如:// RollCall 的连接定义SQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "ConnectString='DSN=RollCall;UID=;PWD=',PBCatalogOwner='dba'"Connect using sqlca;if sqlca.sqlcode <> 0 then// 显示错误,处理错误end if3.编辑某窗口,一般在这个窗口的Open事件中对数据窗控件设置事务信息,如Windows的Open事件中写入:dw_1.settransobject(sqlca)即表示将dw_1的数据操作和sqlca这个事务对象联系起来。
4.检索数据:dw_1.retrieve(参数1,参数2,…….);5.对检索出来的数据(放在缓冲区中)进行编辑,通过直接编辑,Setitem,dw_1.object对象引用等操作,编辑数据;6.编辑完成,将该数据窗中的修改过的数据保存,是否修改由PB自己判断,可以通过dw_1.GetItemStatus函数得到每行、每列的修改状态用来作特殊的判断。
一般的保存脚本如下:if dw_1.update(true,false) = 1 thencommit ; //提交事务//完整的语法应当是Commit using sqlca;//对于默认事务sqlca,可以省略using sqlca子句。
dw_1.resetupdate() // 复位修改状态为从未修改过elseRollBack; // 回滚事务,并提示错误信息Messagebox(‘错误’,‘保存数据时发生错误:~r~r’+&sqlca.sqlerrtext,Stopsign!)end if7.当不需要再使用该事务时,记得断开(一般在Application的Close事件中处理):Disconnect Using Sqlca;对数据窗操作的常用脚本1.插入行dw_1.insertrow(2) //在第二行前插入一条新行2.追加行dw_1.insertrow(0) //在尾部追加一行3.删除行dw_1.Deleterow(2) //删除第二行4.过滤dw_1.setfilter(‘emp_name like “刘%”’) //凡是雇员姓刘的dw_1.filter()5.排需dw_1.setsort(‘emp_name a,emp_address d’) //按姓名正序,地址倒序排需dw_1.sort()6.查找ll_found_Row = dw_1.find(‘emp_name like “刘%”’, 1,dw_1.rowcount())// 在1 –dw_1.rowcount() 范围内查找第一个满足条件的记录7.赋值dw_1.setitem(2,’emp_name’,’测试‘) //设置第二行中emp_name的值为’测试‘8.取值ls_emp_name = dw_1.GetItemSTring(2,’emp_name’) //取出第二行的emp_name值到ls_emp_name变量9.走动记录滚动到指定行:dw_1.scrolltorow(20) //滚动到第20行,一般和find一起操作相对滚动行:dw_1.scrollpriorrow(),scrollnextrow(),scrollNexPage(),scrollPriorPage() 10.更新。
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数据库连接的问题
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
连接数据库也就是指定事务对象。PowerBuilder提供了两个函数:SetTrans()和SetTransObject()。
语法格式:
dw_control.SetTrans(TransactionObject)
dw_control.SetTransObject(TransactionObject)
行操作
行操作的函数主要是对数据库中的数据进行插入、删除或选择操作。
一、插入行
在DataWindow中插入一行,可以使用InsertRow()函数。
语法格式:
dw_control.InsertRow(rownumber)
dw_control是数据窗口控件名,rownumber是要插入行的的行号。如果这个参数为0,代表在当前DataWindow的最后一行插入一空行。
其中,rownumber表示要加亮或者取消加这显示的行号,0表示所有行。select是一个布尔类型的值,TRUE表示加亮,FALSE表示取消加亮显示。该函数返回1时表示成功,返回-1时表示失败。
如果想要直接设置某一行为加亮,需要首先取消其它行的加亮显示状态,采用如下的两行代码:
dw_1.SelectRow(0,FALSE)
语法格式:
dw_control.SetFiter(expression)
dw_control.Fiter()
其中expression是一个字符串,表示过滤的条件,它实际是一个逻辑表达式。
例:
dw_1.SetFilter("id>\'003\' AND name like\'王%\'")
dw_1.Filter()
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连接器。
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与数据库的连接作者:王先桃杨志平来源:《教师·中》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中连接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数据库的方法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程序移植后的数据库连接问题
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 数据库文件名,删除数据库日志文件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
S LS r r . ” Q e e X v 6
d q c . tb s = ” s tr s l a Daa a e ma e ”
三、 与数据库 建立动态连接
信息系统 搭建 完成 之 后 , 只能 在 还 该计 算机 内运行 。如果要将程 序拷 贝到 其他计算机 内 , 就会 出现 无法 连接 数据 库 运行不 了的情况 。这样 的信 息系统无 法独 立于数 据 库 , 少 移植 性 。所 以上 缺
面 的 方法 只适 合 在 一 台计 算 机 内搭 建 信
d qc . o P s = ” a / s la L g as s ” /口令
dqc.SreN me = ” (oa ) sla e ra v 1 1” c
下面将 详 细 讲 述 P B与 S L Sre Q evr 2O O0中的 s j k数据库连接 的方法及过程 。
( ) 装 和 配 置 P w rule 1 安 o eB i r和 d S LSre 0 0 Q evr 0 。 2
3 .检 测 础 盯 数 据库 是 否连 接成 功 t
息 系统平 台时使 用 , 果需 要在 多 台计 如 算机 内运行 或修 改该 信 息 系统程 序 , 就
在与数据 库进 行连 接之 后 , 就要 检
测 m s r 据 库 是 否 连 接 成 功 。 如 果 没 at 数 e
需要 与 s 数据 库建立动态连接 。 j _ k
在 S LSre 2O Q v r 00中提供 了 四个 系 e 统数据库以及两个 当范例用的数据库 。其
中 m s r 据库 记 录 了 S LSr r at 数 e Q v 系统 中 e e
信 息系统 平台的独立性 , 让该 平 台在任意计算机 内都 能正常运行 , 需要通 过代 码来 实现数据库 的动态连接。
关 键 词 : o eB i e; 据 库 ;Q evr 00 Pw r ul r数 d S LS re 2 0
由 Pw rule( o eB i r简称 P ) d B 应用程序
库 名 为 s ) 并 在 数 据 库 中 建 立 所 需 的 j , k 表 格 。将 数 据 库这里我们 保存 为 suu u sl hjk .q 文 件存 储在 F盘。
的所有其他数据库的存在状态以及包含用 户数据库初始化信息的主要文件位置。 _ 3 J 所 以我们 可以先与 m s r at 数据库 相 e 连, 通过 m s r at 数据 库来 检 索是 否存 在 e 我们要连接 的数据库名 。如果不存在 就 需要创建该数 据库 , 接着 我们 运行 在 准 备 阶段生 成 的 sl q 脚本 ( suu u sl 即 hjk .q 文 件 ) 从 而 动 态 地 建 立 了数 据 库 中 的 各 , 个 表与表 内的数据 , 后 再与 创建 的数 然 据库进 行连接。这样我们就完成 了与数
d q c . DBMS s la : ’ MSS Mir s f ’ c o ot
构成 的信息 系统是 提供 信 息 、 助人们 辅
对环境进行控 制 和决策 的 系统 , 核心 其 和基 础是数 据。l 个信 息 系统 的各个 _一 J 部分是独立而 分离 的 , 它们 能 否 紧密地 结合 在一起 以及如何 结 合 , 关键 就 在 于 数据库。因此在用 P B搭 建 信息 系统平 台时 , 就需要与数据库建 立连接 。
一
/ 数据库服务器名 /
dqc. ol = ”a / 用 户 名 sl L gd a s” /
d q c . t C mmi = t e s l a Au o o t r u d qc . P r : ” s la DB a m ”
、
准 备 阶段
在P B与 S LS r r 00数据 库之 Q ev 0 e2 间建 立 连 接 之 前 需 要 做 如 下 准 备 :
信息 , 单击 O k按钮。 到这一步 , 我们就 已经将 P B与 S L Q Sre 00中的 s evr 0 2 j k数据库建立 了连接 , 在搭建信息系统平 台时就可以使用该 数
据 库 中 的表 和 数 据 了 。
指定所需 的连 接参 数作为事务对象 的属 性, 通常在打 开应用 对 象 的脚本 中设 置 这些参数 。代码如 下 :
有 连接成功就 要做 出提示 , 以便检查 出 错原 因。代 码如下 :
jne i c: a
c nn c i g ds l a; o e tusn q c i s c s l bc d fd qla. q d o e< >0
te hn
( ) S LSre 0 0中创建所 需 2 在 Q evr 0 2 要连接 的数据 库 ( 里我们 创建 的数 据 这
i mesgbx 系 统 提 示 ! , f s eo (” a ”
二、 创建数 据库 配置文件
数据库配 置 文件 ( a bs rfe D t aePo l) a i 是一组保 存在 P w r u dr o eB i e 开发 环 境初 l 始化 文件 ( 定义 与 特定 数 据库 的连 接 ) 中的命名参 数集 合 , 连接 每个 数 据库 在 前必须创建相应 的数据库配置文 件。2 _ ] 创建数据库配置文件的基本步骤如下 :
F N E H U EUi 文 社 会 科 字  ̄WN E IXE人 E SHK
浅谈 P B与 数 据 库 的 连 接
王先桃 杨 志 平
( 湖南 师范大 学教 育科学学院 , 湖南 长沙 4 0 1 ) 10 8
摘 要 : 个 信 息 系统 的各 个 部 分 能 否 肾 密地 结 合在 一 起 以及 如 何 结 合 , 一 关键 在 于数 据 库 。 为 了增 强 由 P w r u dr 建 的 o eB i e 搭 l