1

我正在尝试从 Sage 50 数据库中导出数据。我设法创建了与数据库的连接,但是每当我执行查询时,我都会收到以下错误消息。

警告:odbc_exec(): SQLColAttribute can't handle SQL_DESC_OCTET_LENGTH: [S1C00] Driver not able in C:... 第 4 行

我已尝试将光标更改为PHP.netSQL_CUR_USE_CODE上的建议

我也确定它正在连接,因为当我输入一个不存在的表名时,我会收到此错误。

警告:odbc_exec():SQL 错误:找不到表,C:... 中的 SQLExecDirect 中的 SQL 状态 S0002 位于第 4 行

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

提前致谢

4

1 回答 1

0

我在 ac# 应用程序中遇到了类似的问题,但我的解决方案在这里可能有一些针对性,我讨厌看到有人经历我所做的压力。这是我为解决问题所做的工作:

  1. 在 ODBC 数据源管理器中,选择您的 Pervasive ODBC Client Interface
  2. 在数据选项下,选择与 CrystalReports.udl 文件的数据源关联的数据库名称。确保 Dictionary 位置是您公司的 Data 目录。
  3. 确保您的 select 语句查询水晶报表允许的表,例如 Address、Audittr 等,因为并非所有表都可以通过水晶报表查询。

希望有帮助!

于 2020-02-20T17:17:14.793 回答