Как подключиться к базе данных ODBC Sage 50 с помощью PHP

Я пытаюсь экспортировать данные из базы данных Sage 50. Мне удалось создать соединение с базой данных, однако всякий раз, когда я выполняю запрос, у меня появляется следующее сообщение об ошибке.

Предупреждение: odbc_exec(): SQLColAttribute не может обработать SQL_DESC_OCTET_LENGTH: [S1C00] Драйвер не поддерживается в C:... в строке 4

Я попытался изменить курсор на SQL_CUR_USE_CODE как предложено на PHP.net

Я также уверен, что он подключается, так как, когда я ввожу имя таблицы, которая не существует, я получаю эту ошибку.

Предупреждение: odbc_exec (): ошибка SQL: таблица не найдена, состояние SQL S0002 в SQLExecDirect в C:... в строке 4

$conn = odbc_connect("TestDB", "Manager", "", SQL_CUR_USE_ODBC);
$sql="SELECT * FROM STOCK"; 
$result=odbc_exec($conn,$sql);

заранее спасибо

0 ответов

У меня была аналогичная проблема с приложением C#, но мое решение может иметь некоторую уместность здесь, и мне не нравится, когда кто-то проходит через стресс, который я сделал. Вот что я сделал, чтобы исправить свою проблему:

  1. В администраторе источника данных ODBC выберите свой Pervasive ODBC Client Interface.
  2. В разделе "Параметры данных" выберите имя базы данных, связанной с источником данных вашего файла CrystalReports.udl. Убедитесь, что расположение словаря - это каталог данных вашей компании.
  3. Убедитесь, что ваш оператор select запрашивает таблицу, которая разрешена отчетом Crystal, например, Address, Audittr и т. Д., Поскольку не все таблицы можно запросить через отчеты Crystal.

Надеюсь, это поможет!

Другие вопросы по тегам