0

我正在用 php 开发一个应用程序,它可以从 peachtree 数据库中获取交易、发票等。因此,对于数据库访问,我选择了通过使用 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

如何纠正这个?

4

3 回答 3

1

使用这个连接字符串..它会工作

 $connect=odbc_connect("Driver={Pervasive ODBC Engine Interface};ServerName=localhost;ServerDSN=DSNname;","Username","Password",SQL_CUR_USE_ODBC);  
于 2015-02-21T08:35:20.270 回答
0

我认为这个连接字符串会起作用:-

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

用户名和密码是您在 peachtree -> maintain->users->setupsecurity->data access/crystalreport -> All 选项中提供的详细信息 peachtree 应用程序。

于 2015-02-17T08:26:15.297 回答
0

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

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

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

于 2015-02-17T11:19:43.047 回答