Подключение к базе данных Peachtree с помощью php?

0

Я разрабатываю приложение в php, которое может извлекать транзакцию, invoices.etc из базы данных peachtree. Поэтому для доступа к базе данных я выбрал метод ODBC, подключившись с помощью Pervasive SQL. Я использовал строку подключения следующим образом:

$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

Как исправить это?

  • 0
    Примите во внимание, что это старый файл, и у вас есть свой ответ, поэтому я не предоставляю в качестве ответа, но, возможно, произошла ошибка подключения к строке, которое вы пытались выполнить выше, потому что вам нужно было избежать обратной косой черты $connection = odbc_connect("DRIVER={Pervasive ODBC Engine Interface};Dbq=C:\\Sagepro\\Peachtree\\Company\\Sample\\PAW\\BCS","Peachtree","password");
Теги:
odbc
pervasive-sql

3 ответа

1
Лучший ответ

Используйте эту строку подключения.. она будет работать

 $connect=odbc_connect("Driver={Pervasive ODBC Engine Interface};ServerName=localhost;ServerDSN=DSNname;","Username","Password",SQL_CUR_USE_ODBC);  
  • 0
    да, это работает .. спасибо Литто .. большое спасибо
0

Вам необходимо создать имя Pervasive Database Name, указывающее на ваше местоположение данных. Вы не можете указать путь в строке подключения. Всепроникающие удалили эту функциональность. После создания имени базы данных через Pervasive Control Center вы должны указать это имя в строке подключения:

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

где "XXXXXXXX" - это имя базы данных, созданной в Центре управления PErvasive.

  • 0
    Я использовал ваш код, но это тоже не работает. Можете ли вы предоставить более подробную информацию об этом. Тем не менее, она дает ошибку: - Предупреждение: odbc_connect () [function.odbc-connect]: Ошибка SQL: [Pervasive] [Интерфейс клиента ODBC] [LNA] [Pervasive] [Интерфейс механизма ODBC] [Диспетчер записи данных] Не удается найти указанную вами именованную базу данных (ошибка Btrieve 2301), состояние SQL S1000 в SQLConnect в C: \ wamp \ www \ peachtreeapi \ index.php в строке 2
  • 0
    Вы создали имя базы данных? Вы изменили строку подключения Dbq = параметр, чтобы соответствовать имени, которое вы создали? Я отредактировал свой ответ, чтобы немного прояснить вопрос об именах.
Показать ещё 3 комментария
0

Я думаю, что эта строка соединения будет работать: -

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

имя пользователя и пароль - данные, которые вы предоставили в peachtree → maintain-> пользователи → setupsecurity-> доступ к данным /crystalreport → Все варианты в приложении peachtree.

  • 0
    не могу подключиться ...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню