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与数据库的连接方法

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中用事物对象连接数据库的方法

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需要时,应用程序也可以创建新的事务对象,以适应同时连接到多个数据库管理系统的要求。

PB9.0实验操作说明

PB9.0实验操作说明

实验步骤:一、建立数据库1.创建数据库exam_pb2.建立表students3.为表students指定主键为“学号”4.向表中输入数据二、建立应用程序1.建立工作空间“练习一”2.建立应用程序“test”3.建数据窗口dw_15.建应用程序窗口w_main6在应用程序窗口中添加控件7.为数据窗口指定目标对象“student”为主窗口定义标题!为控件定义标题!8.为应用程序和控件编写脚本一定要保存窗口!!①应用程序test脚本:open(w_main) ——打开主窗口②应用程序窗口w_main的各个脚本:w_main open事件的脚本:SQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "Connectstring='DSN=exam_pb;uid=dba;pwd=sql'"connect using sqlca;dw_1.settransobject(sqlca)“增加”命令按钮click事件的脚本:dw_1.insertrow(0)dw_1.setfocus()“删除”命令按钮click的脚本:dw_1.deleterow(0)“检索”命令按钮click的脚本:dw_1.retrieve()“过滤”命令按钮click的脚本:w_main.dw_1.setfilter("系别='计算机系'")w_main.dw_1.filter()“保存”命令按钮click的脚本:dw_1.update()“退出”命令按钮click的脚本:close(parent)三、连接数据库1.建立ODBC数据源“exam_pb”用户名:dba 密码:sql 考试时也是这个2.建立数据库描述文件“exam_pb”预览和测试!!3.连接数据源四、运行程序------------------------------实验步骤:一、建立工作空间“练习二”二、建立应用程序“test”三、建立主窗口“w_main”为主窗口定义标题!!保存!!为应用程序test编写脚本“open(w_main)”四、建立菜单“m_main”为菜单添加子菜单项!!为子菜单项定义标题!!五、将菜单挂在主窗口上保存!!!!!时刻不要忘记六、建立计算器窗口“calculator”为计算器窗口定义标题!!1.为计算器窗口添加控件此窗口包含三个静态文本框控件三个单行编辑框控件五个命令按钮!清空单行编辑框中的“none”字符2.为各个控件编写脚本①为“加”命令按钮编写脚本:real m,nm=real(sle_1.text)n=real(sle_2.text)sle_3.text=string(m+n)②为“减”命令按钮编写脚本:real m,nm=real(sle_1.text)n=real(sle_2.text)sle_3.text=string(m - n) 一定要注意m的后面和n的前面要有空格。

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开发CS结构MISppt13

第七章 以PB开发CS结构MISppt13
①利用系统工具栏的“Database Profile”(数据 库画笔 )按钮打开数据库画笔界面。如上图所示。 选择“ODB ODBC”后单击按钮“New”,则打开如下 图所示的“Database Profile Setup-ODBC”对话框 (即ODBC数据库画笔对话框),在“Data Source”栏 目中输入数据源名称“xstest”,“User ID”栏目输入 数据源用户名“sa”,“Password:”栏目中输入密码 “1234”。“Profile Name”的名称可任意定义一个 便于记忆的名字。例如:MaSQL。其他项目可采用 默认值。
第七章 以PB开发C/S结构MIS
二、以PB连接远程数据库
PB提供了两种连接数据库的方式,一种是通过开放 的数据库接口ODBC连接数据库,一种是使用专用数 据库接口连接数据库。下面分别介绍连接方法:
1、PB中的数据库操作界面
(1)数据库操作界面
在PB的主界面下,单击系统工具栏的“Database” (数据库)按钮就可以打开数据库操作界面。
①利用系统工具栏的“Database Profile”(数据库画笔) 按钮打开数据库画笔界面。
选择“MSS Microsoft SQL Server”后单击按钮“New”, 打开如下图所示的“Database Profile SetupMicrosoft SQL Server”即(SQL Server专用数据库接口 设置对话框),在“Server”栏目中输入数据库服务器的 名称“mxltest”,“Login ID”栏目输入数据库用户名 “sa”,“Password:”栏目中输入密码“1234”;“Database” 栏目中输入要访问的数据库名称“ma”;“Profile Name” 的名称可任意定义一个便于记忆的名字。例如定义为: matest。其他项目可采用默认值。

在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实验步骤

1.建立数据库。

启动powerbuilder(pb)——单击database图标按钮——Select Tables 的Cancel——file——create database(数据库名:employee。

Browse为数据库的存储路径)——ok。

(密码和用户名要知道)2.建立数据库中的表。

Table图标——写明字段名、类型、长度、是否为空。

——save(保存,table name:emp)——ok——close定义关键字:右键表emp——property——primary key——点击emp_id——ok(设置sex编辑风格等)数据的装入:DB Administration——输入:insert into emp values('101','刘然','01','吉林','女',//或者0,1'1970/09/02','副经理',3200,'出生于吉林市,93年参加工作,毕业于人民大学。

');——exceute图标——也可以保存表save图标。

——return按钮返回。

还可以利用data manipulation(grid)等3个图标进行手动添加,删除,插入信息。

3 创建应用。

单击application图标——file——new新建应用保存路径,名字:pbtutor。

——no Window图标——new新建——标题设为“welcome”,类型:response——拖拽三个静态文本框(static text)两个单行编辑器(single line edit)两个按钮(commond button):其中:文本框名字:st_welcome,st_userid,st_passwd.。

两个编辑器名:sle_userid,sle_passwd。

两个按钮名:cb_ok,cb_cancel。

PB自动注册ODBC数据连接

PB自动注册ODBC数据连接

pb6.5下自动注册odbc数据源 ——————————————————————————————―――――――——――――――――――功能: 1 、pb6.5下自动注册odbc数据源;2 、自动获取程序或数据库目录;3 、不安装Sql anywhere 7.0 直连//获取程序所在目录String ls_curdirls_curdir=Space(256)//为字符缓冲区开辟内存空间GetCurrentDirectoryA(256,ls_curdir)ulong ul_numInt Answer,Answer1,Answer2,Answer3,Answer4,Answer5,Answer6,Answer7,ansApp stringls_driver,ls_start,ls_location,apppath,db_path,db_name,ODBCStr,ds_name,ls_ dbpath//设置Adaptive Server Anywhere 7.0的驱动程序路径ls_Location =ls_curdirls_dbpath=ls_curdir+"\data\yingxiao.db"//判断Adaptive Server Anywhere 7.0的驱动程序是否正确安装ls_Driver=ls_Location+"\dbodbc7.dll"ls_Start=ls_Location+"\dbeng7.exe"//IF Not (FileExists(ls_Driver) AND FileExists(ls_Start)) Then//MessageBox("错误!","系统中没有安装Adaptive Server Anywhere 7.0"+&//"的驱动程序,系统将终止运行!",StopSign!)//Return//End IF//设置ODBC\ODBCINST.INI\ODBC DRIVERSAnswer=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST.INI"+& "\ODBC Drivers","Adaptive Server Anywhere 7.0", RegString!, "Installed") IF Answer = -1 ThenMessageBox("错误!","应用程序无法设置ODBC\ODBCINST.INI\"+&"ODBC DRIVERS,系统将终止运行",Information!)ReturnEnd if//设置ODBC\ODBCINST.INI\Answer1=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST."+& "Adaptive Server Anywhere 7.0", "CPTimeout", RegString!, "not pooled") Answer2=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST."+&"INI\Adaptive Server Anywhere 7.0", "Driver", RegString!,ls_Driver) Answer3=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBCINST."+&"INI\Adaptive Server Anywhere 7.0", "Setup", RegString!,ls_Driver)IF Answer1 = -1 OR Answer2 = -1 OR Answer3 = -1 ThenMessageBox("错误!","应用程序无法设置ODBC\ODBCINST.INI,"+&"系统将终止运行!",Information!)//程序中不折行ReturnEnd ifdb_path = ""+ls_dbpath+""//设置数据库路径及文件名db_name = "yingxiao" //设置数据库名称ds_name = "yingxiao" //设置ODBC数据源名//设置ODBC DATA SOURCE名称Answer=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\"+& "ODBC Data Sources", ds_name, RegString!, "Adaptive Server Anywhere 7.0") Answer1=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\"+&ds_name,"driver", Regstring!, ls_Driver)Answer2=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\"+&ds_name,"start", Regstring!, ls_Start)Answer3=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\"+&ds_name,"autostop", Regstring!, "yes")Answer4=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\"+& ds_name,"DataBaseFile", Regstring!, db_path)Answer5=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\"+& ds_name,"DataBaseName", Regstring!, db_name)Answer6=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\"+& ds_name,"PWD", Regstring!, "sql")Answer7=RegistrySet("HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.ini\"+& ds_name,"UID", Regstring!, "dba")IF Answer = -1 ThenMessageBox("错误!","应用程序无法设置ODBC DATA SOURCE名称,"+& "系统将终止运行!",Information!) //程序中不折行ReturnEnd if//设置ODBC.ini细节Answer1=RegistrySet("HKEY_current_user\software\odbc\odbc.ini\"+& ds_name,"driver", Regstring!, ls_Driver)Answer2=RegistrySet("HKEY_current_user\software\odbc\odbc.ini\"+& ds_name,"start", Regstring!, ls_Start)Answer3=RegistrySet("HKEY_current_user\software\odbc\odbc.ini\"+& ds_name,"autostop", Regstring!, "yes")Answer4=RegistrySet("HKEY_current_user\software\odbc\odbc.ini\"+ds_name,& "DataBaseFile", Regstring!, db_path)Answer5=RegistrySet("HKEY_current_user\software\odbc\odbc.ini\"+ds_name,& "DataBaseName", Regstring!, db_name)Answer6=RegistrySet("HKEY_current_user\software\odbc\odbc.ini\"+ds_name,& "PWD", Regstring!, "sql")Answer7=RegistrySet("HKEY_current_user\software\odbc\odbc.ini\"+ds_name,& "UID", Regstring!, "dba")IF Answer1 = -1 OR Answer2 = -1 OR Answer3 = -1 OR &Answer4 = -1 OR Answer5 = -1 OR Answer6 = -1 OR Answer7 = -1 Then MessageBox("错误!","应用程序无法设置ODBC.INI细节,"+&"系统将终止运行!",Information!)ReturnEnd ifodbcstr='dsn=' + ds_name +';databasename=' + db_name + ';databasefile=' + db_pathSQLCA.DBMS="ODBC"SQLCA.Database=db_nameSQLCA.DbParm="connectstring='" + odbcstr+";uid=dba;pwd=sql'"open(w_splash)//sleep(2)connect using sqlca;IF SQLCA.SQLCode = -1 THENMessageBox("数据库连接失败", "不能连接到数据库上,请检查。

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 //设置是否自动提交

PowerBuilder内置ORACLE数据库接口的使用方法

PowerBuilder内置ORACLE数据库接口的使用方法

PowerBuilder内置ORACLE数据库接口的使用方法PowerBuilder(PB)和Oracle分别是前端开发工具和RDBMS的主流产品。

PB提供了两种与Oracle连接的接口:PowerSoft内置的数据库接口(Native Database Interface)和ODBC接口。

本文介绍使用PB6.0内置Oracle接口的方法,包括数据描述文件的设置、存储过程的调用和存储过程作为数据窗口数据源的操作方法等内容,使用的RDBMS的Oracle 7.3。

PowerBuilder与Oracle的连接假定已安装Oracle客户端应用程序。

可用Sqlplus或Tnsping等是否能连接到Oracle数据库,确定在配置文件中使用的数据库别名(Database Alias,又称服务器名,Server Name)。

如有疑问,可在Oracle客户端程序目录下tnsname.or a文件中找到。

另外保证搜索路径已包括应用程序的安装目录(如C:\ORAWIN95\BIN)。

进入PB的Database Profiles画笔,可看到所有已安装的数据库接口(PB6.0缺省安装的是Oracle 7. 3版的接口,如使用低版本的Oracle,需在安装时指定),选择“Oracle 7.3”,点击“New”按钮,进入Database Profile Setup对话框。

在“C onnection”页输入下列信息:Profile Name:为该Database Profile起一个有意义的名称;Server:@TNS:ServerName,其中ServerName为上述数据库别名(服务器名),如@TNS:ORA73;Login ID:Oracle数据库中实际的用户名,由于PB初次连接到数据库时要自动建立五个系统表(Powe rBuilder CatalogTable:PBCATTBL,PBCATCOL,PBCATEDT,PBCATFMT, PBCATVLD,存储表的扩展属性),因此第一个连接到Oracl e的用户必须具有建表、给PUBLIC角色授权等权限。

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连接器。

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 文件的关联去掉。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
解决的办法:如果以前有备份用备份文件覆盖原文件即可,如果没有备份文件就只能重新建库了!
PB8如何使用OLE DB练到ASA数据库
(本文来自sybase网站 翻译 by 金色年华)
原文出处:
/cn/cont ... c_pb_dbms_00017.htm
SQLCA.DBParm = "PBCatalogOwner='Orcl'"
SetPointer(HourGlass!)
connect using sqlca;
file://数据库连接成功打开主窗口
Open(w_main)
If sqlca.sqlcode<>0 then
1) OLE DB/ODBC bridge
对于这种连接,你必须在数据库参数中,指定有效的 ODBC 数据源,连接的脚本如下:
// Profile asa_oledb
SQLCA.DBMS = "OLE DB"
SQLCA.LogPass = "sql"
SQLCA.LogId = "dba"
三.打包所需文件
参看以下文章:
/pbbbs/htm_data/12/0505/233.html
四.容易出现的问题及解决方法
导致ASA数据库无法连接的问题有以下几种:
1、ODBC配置错误。没有配置数据源,数据库的用户名或口令错误等都会导致数据库无法连接。
7.Login ID:输入你连接数据库的用户ID
8.Password:输入你连接数据库的用户口令
9.接着选择System Tab页面:
在PowerBuilder Catalog Table Owener:system[这个是可以更改的]按下:"Apply"或者"OK"后即可.返回到Database Profiles界面:
即可动态的进行数据库连接了.
具体的INi文件代码内容为:
[DataBase]
DBMS=ODBC
Database=
UserID=
DatabasePassword=
ServerName=
LogId=
LogPassword=
DbParm=ConnectString='DSN=dagang;UID=kantmis;PWD=kantmis'
3.在弹出的窗口中选择Tab页面为Connection:
4.在Profile Name:中输入你要创建的数据库名,这里就假设为Orcl
5.在Connect Information中:
6.SerVer:这里输入你在Net8 Easy Configers中配置的数据库服务器名
SQLCA.AutoCommit = False
SQLCA.DBParm = "PROVIDER='ASAProv',DATASOURCE='asa'"
2) OLE DB (不需要配置 ODBC)
你可以通过一个扩展名为.udl的单独的文件,提供连接信息,在OLE DB中访问数据.这个文件与 Microsoft DataLink (.udl) file 类似. 你必须在系统中安装 Datalink API 以便于创建和使用 .udl 文件.
PB数据库配置方法
首先进入到PowerBuilder主页面后:
1.在pb主菜单的Tool菜单中选择"DataBase Profile"进入到一个界面
2.在Installed Database InterFaces 中找到Oracle所在位置,确保其选中,选择按钮"New"创建一个数据库名[如:Orcl]
10.选择你刚才创建的数据库,进行连接"Connect"连接.
*****当然,你可以直接选择你创建的数据库,然后选择Edit进入到一个界
面"Database Proile Setup",选择Preview页面,将Database Connectiong Syntax:中的
代码Copy到你的应用程序的Open事件中即可.
a)启动Sybase central在左边的树型目录中选择Utilities;
b)双击右边出现的条目中的change log file settings,直接next;
c)点Browse选择需要去除log文件的数据库文件,选好后next;
// Profile Orcl
SQLCA.DBMS = "O84 Oracle8/8i (8.x.4+)"
SQLCA.LogPass = "Password"
SQLCA.ServerName = "Sername"
SQLCA.LogId = "UserID"
SQLCA.AutoCommit = False
if sqlca.sqlcode <> 0 then
MessageBox ("不能连接到数据库", "可能是没上网或者没有安装数据库~n详细信息为:"+sqlca.sqlerrtext)
return
end if
PB与各种数据库连接
作者:佚名 来源:网络 更新时间:2006-10-1 17:37:26 等级:★★★
Prompt=0
environment lenv_env // holds environment information
if ( GetEnvironment(lenv_env) <> 1 ) then
MessageBox( "Application: Open", &
Messagebox("不能连接到数据库",Sqlca.sqlerrtext)
halt
return
end if
以上这几行代码就是具体的连接代码,只要你进行修改成你自己的数据库名和用户名用户口令即可.
如果向动态的进行数据库连接,你可以创建一个INi文件,将连接数据库的代码写到INi文件中,这样
在pb中通过OLE DB连接到ASA数据库的步骤如下:
在命令提示符下键入如下命令,启动 ASADEMO:
dbsrv7 asademo -x tcpip -n asademo
("asademo" - 你选择运行的数据库. 确定你没有正在运行一个同名的数据库,否则会出错)
有两个方法通过 OLE DB 连接到 ASA Server:
创建 .udl文件的方法:
在当前目录里的空白处单击鼠标右键,选择新建文件,选择 Microsoft Data Link.如果没有创建 Microsoft Data Link 的选项,需要创建一个文本文件,然后更改扩展名为 .udl.双击这个文件,添加连接信息.详情请访问 搜索 Data Link(此处原文有乱码,具体内容不详).
sqlca.dbparm=""
sqlca.autocommit=false
connect using sqlca;
请问以上语句是不是通过ODBC连接的?除些之外,还有其它连接方法吗?
是的,上面的东西是用ODBC连接的,代码是在工程里面写的!
解决的办法:检查数据源的配置,如果没有在ODBC中配置数据源则按照向导添加数据源即可;口令错误只需改为正确的即可。
2、连接时提示LOG文件错误。这样的问题大多出现在重装系统后、源码移植到其他系统、数据库文件路径改变之后。
解决的办法:在创建ASA数据库的时候不创建LOG文件,如果已经创建了LOG文件则可以利用PB自带的工具Sybase central来去掉LOG文件和数据库文件的关联。操作步骤如下:
SQLCA.ServerName = "WISCO-2300E1457"//服务器名
SQLCA.LogId = "administrator"//登陆名
SQLCA.AutoCommit = False//取消自动提交
SQLCA.DBParm = ""
connect using sqlca;
"Unable to get environment information.~nHalting ..." )
halt
end if
SQLCA.DBMS = "MSS Microsoft SQL Server 6.x"
SQLCA.Database = "huachdb"//数据库名
sqlca.dbms="mss microsoft sql server 2000"
sqlca.servername="dcserver"
sqlca.database="jcc"
sqlca.logid="sa"
sqlca.logpass=""
sqlca.dbparm=""
sqlca.autocommit=false
connect using sqlca;
这段代码是正确的!
打开PB,再打开PB自带的database profile,选择需要连接的数据库,配置参数
然后在preview中就可以看到连接代码了
在pb中使用 .udl 文件时,要确认在数据库中已经创建了 Catalog Tables (由pbcat...名字开头,然后用这几张表存放一些PB中的信息,如果这几张表无法创建,就会出现出错信息).你可以通过连接到系统中已有的ODBC 数据源. 如果这些表不存在,就会提示 Catalog Tables没有被创建.
相关文档
最新文档