使用php连接到Peachtree数据库?

时间:2015-02-17 08:14:48

标签: php odbc pervasive-sql

我在php中开发了一个可以从peachtree数据库中获取事务,invoices.etc的应用程序。因此,对于数据库访问,我通过使用Pervasive SQL连接选择了ODBC方法。 我使用了这样的连接字符串: -

$connection = odbc_connect("DRIVER={Pervasive ODBC Engine Interface};Dbq=C:\Sagepro\Peachtree\Company\Sample\PAW\BCS","Peachtree","password");

但是它给出了错误

 ( ! ) Warning: odbc_connect() [function.odbc-connect]: SQL error: [Pervasive][ODBC Client Interface][LNA][Pervasive][ODBC Engine Interface][Data Record Manager]Cannot locate the named database you specified(Btrieve Error 2301), SQL state S1000 in SQLConnect in C:\wamp\www\peachtreeapi\index.php on line 2

如何纠正这个问题?

3 个答案:

答案 0 :(得分:1)

使用此连接字符串..它将起作用

 $connect=odbc_connect("Driver={Pervasive ODBC Engine Interface};ServerName=localhost;ServerDSN=DSNname;","Username","Password",SQL_CUR_USE_ODBC);  

答案 1 :(得分:0)

我认为这个连接字符串可以工作: -

 $dbhandle = odbc_connect("DSN=YOURDSN;DRIVER={Pervasive ODBC Engine Interface};DATAPATH=c:\peachw\YOURCOMPANY;DDFPATH=c:\peachw\YOURCOMPANY","username","password");

用户名&密码是您在peachtree中提供的详细信息 - >维护 - >用户 - > setupsecurity->数据访问/ crystalreport - >您的peachtree应用程序中的所有选项。

答案 2 :(得分:0)

您需要创建指向数据位置的Pervasive数据库名称。您无法在连接字符串中指定路径。 Pervasive删除了该功能。通过Pervasive Control Center创建数据库名称后,您可以在连接字符串中指定该名称:

$connection = odbc_connect("DRIVER={Pervasive ODBC Engine Interface};Dbq=XXXXXXXX","Peachtree","password");

其中“XXXXXXXX”是您在PErvasive Control Center中创建的数据库的名称。