📄 pb.txt
字号:
SQLCA.LogId = "sa" //我的用户名是sa
SQLCA.AutoCommit = False
SQLCA.DBParm = "PROVIDER='SQLOLEDB',DATASOURCE='NETMANAGER',PROVIDERSTRING='database=zs'" //我的数据库名是:zs;datasource后面也可以是IP地址:DATASOURCE='127.0.0.1'
至此就完成了pb10下用OLE DB连接sql server的配置! 2006-11-15 23:51
在PB中使用FoxPro数据库的方法
重庆工业管理学院 蒋波
---- Power Builder 是十分优秀的用于客户/服务器环境信息管理系统开发工具,其优秀之处不仅是因为可以开发基于客户/服务器模式的系统,而且简单、易学,Power Builder 自身是没有数据库管理系统(DBMS)的,它是首先通过不同的驱动程序联接不同的数据库,再通过这种联接,实现对数据的管理。Power Builder同时随盘附带有一个小型的数据库管理系统:SQL Anywhere,所以用户也可以直接开发用于单机的完整的信息管理系统。
---- 本人以前曾开发过基于FoxPro环境下的数据库系统,但FoxPro的编程太麻烦,不但要处理数据的管理,而且还要花大量的精力处理输入、输出的格式等。但有着可视化编程环境的Power Builder却不同,处理输入、输出是件相当简单的事情,于是,本人偿试用Power Builder来管理以前的数据库。 c在Power Builder系统中,使用FoxPro的数据库有两种方法:一是利用ODBC联接FoxPro数据库;另一种方法是将FoxPro的数据库转换到SQL Anywhere的数据格式。
---- 一、 利用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" // 指定被联接数据库所在目录
sqlca.userid="public" // 用户识别号,都为 public
sqlca.servername="FOXPRO" // 服务器名:均为FOXPRO
sqlca.dbparm="Connectstring='DSN=tscxs'" //数据源名
connect using sqlca; // 实施联接
……
---- 通过对FoxPro数据库的联接,用户便可以在Power Builder开发环境下、应用程序中使用这些数据库,快速地开发出自己的信息管理系统,实现对这些数据库的维护与管理。
---- 二、 将DBF文件转换为SQL Anywhere 的DB文件格式
---- 在Power Builder环境下,附带有一个数据库系统——SQL Anywhere,在Power Builder中利用它,用户可以直接建立、维护数据库。在SQL Anywhere中,数据库结构虽然与VFP不同,但概念是一致的,即:数据库是系统中相关的各种数据,这些数据又因不同用途组织成不同的表,这些表共同构成数据库,与传统的数据库(DBF)相类比,PB、VFP中的表即是传统意义的数据库,PB、VFP中的数据库类似于传统的数据库(DBF)文件所在的目录。SQL Anywhere中提供了将传统的DBF文件转换为该系统下的数据库文件(DB)中的表的工具。为了实现这一转换,用户必须先建立一个新的表,再将DBF格式的文件内容导入该表中。
---- 对于DBF文件,必须是传统意义上的数据库,如FoxPro、dBase、FoxBASE环境下的数据库文件。该种数据库文件严格遵循“数据文件==数据库结构+数据库记录”这一格式。其结构如下:“32字节文件描述若干个32字节的字段描述 结构描述结束符(0D) 记录1,记录2,…… 文件结束符(1A)”
03 62 0A 07 02 00 00 00 - 81 00 4C
00 00 00 00 00 // 文件描述:时间、长
00 00 00 00 00 00 00 00 - 00 00 00
00 00 00 00 00 度、记录长、记录数
4E 41 4D 45 00 00 00 00 - 00 00 00
43 01 00 00 00 // 第一个字段:名、类
28 00 00 00 00 00 00 00 - 00 00 00< 2006-11-15 23:51
在PB中使用FoxPro数据库的方法
重庆工业管理学院 蒋波
---- Power Builder 是十分优秀的用于客户/服务器环境信息管理系统开发工具,其优秀之处不仅是因为可以开发基于客户/服务器模式的系统,而且简单、易学,Power Builder 自身是没有数据库管理系统(DBMS)的,它是首先通过不同的驱动程序联接不同的数据库,再通过这种联接,实现对数据的管理。Power Builder同时随盘附带有一个小型的数据库管理系统:SQL Anywhere,所以用户也可以直接开发用于单机的完整的信息管理系统。
---- 本人以前曾开发过基于FoxPro环境下的数据库系统,但FoxPro的编程太麻烦,不但要处理数据的管理,而且还要花大量的精力处理输入、输出的格式等。但有着可视化编程环境的Power Builder却不同,处理输入、输出是件相当简单的事情,于是,本人偿试用Power Builder来管理以前的数据库。 c在Power Builder系统中,使用FoxPro的数据库有两种方法:一是利用ODBC联接FoxPro数据库;另一种方法是将FoxPro的数据库转换到SQL Anywhere的数据格式。
---- 一、 利用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" // 指定被联接数据库所在目录
sqlca.userid="public" // 用户识别号,都为 public
sqlca.servername="FOXPRO" // 服务器名:均为FOXPRO
sqlca.dbparm="Connectstring='DSN=tscxs'" //数据源名
connect using sqlca; // 实施联接
……
---- 通过对FoxPro数据库的联接,用户便可以在Power Builder开发环境下、应用程序中使用这些数据库,快速地开发出自己的信息管理系统,实现对这些数据库的维护与管理。
---- 二、 将DBF文件转换为SQL Anywhere 的DB文件格式
---- 在Power Builder环境下,附带有一个数据库系统——SQL Anywhere,在Power Builder中利用它,用户可以直接建立、维护数据库。在SQL Anywhere中,数据库结构虽然与VFP不同,但概念是一致的,即:数据库是系统中相关的各种数据,这些数据又因不同用途组织成不同的表,这些表共同构成数据库,与传统的数据库(DBF)相类比,PB、VFP中的表即是传统意义的数据库,PB、VFP中的数据库类似于传统的数据库(DBF)文件所在的目录。SQL Anywhere中提供了将传统的DBF文件转换为该系统下的数据库文件(DB)中的表的工具。为了实现这一转换,用户必须先建立一个新的表,再将DBF格式的文件内容导入该表中。
---- 对于DBF文件,必须是传统意义上的数据库,如FoxPro、dBase、FoxBASE环境下的数据库文件。该种数据库文件严格遵循“数据文件==数据库结构+数据库记录”这一格式。其结构如下:“32字节文件描述若干个32字节的字段描述 结构描述结束符(0D) 记录1,记录2,…… 文件结束符(1A)”
03 62 0A 07 02 00 00 00 - 81 00 4C
00 00 00 00 00 // 文件描述:时间、长
00 00 00 00 00 00 00 00 - 00 00 00
00 00 00 00 00 度、记录长、记录数
4E 41 4D 45 00 00 00 00 - 00 00 00
43 01 00 00 00 // 第一个字段:名、类
28 00 00 00 00 00 00 00 - 00 00 00< 2006-11-15 23:51
PB下连接Mysql
需要安装myodbc,具体的安装和设置请参阅:
http://dev.mysql.com/doc/refman/5.0/en/myodbc-installation-binary.html#myodbc-installation-binary-windows-installer
使用DSN方式:
ConnectString='DSN=dl;DESC=MySQL ODBC 3.51 Driver DSN;DATABASE=xxxx;SERVER=xxx.xxx.xxx.xxx;UID=xxxx;PASSWORD=xxxx;PORT=3306;SOCKET=;OPTION=3;STMT=;'
或者
ConnectString='DRIVER={MySQL ODBC 3.51 Driver};SERVER=xxx.xxx.xxx.xxx;DATABASE=xxxx;UID=xxxx;PWD=xxxx;PORT=3306;OPTION=3' 2006-11-15 23:51 PB中连接Access数据库的三种方法
方式一:
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='driver=Microsoft Access Driver (*.mdb);DBQ=c:\foodmart.mdb'"
CONNECT;
IF SQLCA.SQLCode <> 0 THEN
MessageBox("数据库连接失败","请与管理员联系。错误号:" + String(SQLCA.SQLCode) + "~r~n错误原因:" + SQLCA.SQLErrText)
RETURN
else
MessageBox("数据库连接成功","现在进入系统... ...")
end if
方式二:
SQLCA.DBMS = "OLE DB"
SQLCA.AutoCommit = False
SQLCA.DBParm = "PROVIDER='Microsoft.Jet.OLEDB.4.0',DATASOURCE='C:\foodmart.mdb'"
CONNECT;
方式三:
建立DSN,通过ODBC连接。这个就不用多说了。
例如:
// Profile my_ass
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=my_ass'"
catalog tables could not be created and are not available for use 问题解决方法:
这种情况多见于从SQL server 转到 Access 数据库,用ODBC连接的情况
把sqlserver数据库里的五个‘pb’字母开头的数据表导入到access数据库里去,再连接就不提示了
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -