【问题标题】:ODBC Connection String for PHP with Obscure Driver带有晦涩驱动程序的 PHP 的 ODBC 连接字符串
【发布时间】:2010-06-02 18:08:55
【问题描述】:

我正在尝试通过 ODBC 连接到数据库,但通过 Google/互联网找不到任何帮助。

我们的 ERP 使用 OMNIS 作为框架,它提供了一个 ODBC 驱动程序,用于在程序之外查询 OMNIS 的专有数据库。我已经创建了驱动程序和 DSN,但我无法开始使用 PHP 操作数据或发送查询。

驱动程序在 ODBC 连接管理器中显示为“OMNIS ODBC 驱动程序” - 我尝试了许多连接字符串,但似乎无法启动。

DSN 位于 C:\Test.dsn。驱动程序再次显示为 OMNIS ODBC 驱动程序。非常感谢任何帮助。

【问题讨论】:

  • 你试过 ConnectionStrings.com 吗?
  • 是的,这是我检查的第一件事。不幸的是,我仍然无法让它工作。我使用: DRIVER={OMNIS ODBC Driver};FILEDSN=c:\Test.dsn;Uid=test;Pwd=test;没有运气:(

标签: php odbc


【解决方案1】:

答案:

这些说明假定已在主机服务器上设置了 Apache Web 服务器。

操作系统:Windows Server 2003 网络服务器:Apache 2 (WAMP www.wamp.com)

1。 下载并安装适用于 Windows 非 Unicode 驱动程序的 Omnis ODBC 驱动程序 (http://www.tigerlogic.com/tigerlogic/omnis/download/tools.js

2。 为您的数据文件创建一个 SYSTEM 数据源: -开始菜单 > 管理工具 > 数据源 - 选择“系统 DSN”选项卡 - 点击添加 - 从驱动程序列表中选择“Omnis ODBC 驱动程序” - 点击完成 - 填写数据源名称、描述和身份验证凭据 重要提示:准确记住数据源名称。这是将用于连接到数据库的数据源的名称。 - 选择数据文件。 -节省 - 数据源现已在操作系统中注册,可以使用了。

3。 在您的 Web 根目录中,创建一个新文件名 odbc_test.php 。

使用以下示例代码测试数据连接。

<?php

/*My data source is named PFDSN, so that is what I will be using in this example
   Make sure you use the exact name of the data source created in step 2.
*/
$conn = odbc_connect('PFDSN',' ',' ');  //the connection to the data file
$sql = 'select * from INVOICES';    //query string
$result = odbc_exec($conn,$sql); //execute the query
$while($data[] = odbc_fetch_array($result)); //loop through the result set
odbc_free_result($result); //unallocate the result set
odbc_close($conn); //because this is good practice

print_r($data);
?>

保存并关闭文件。 导航到http://localhost/odbc_test.php(或文件所在的任何位置)。

如果连接成功,页面将显示从 invoices 表中提取的所有数据的转储。

如果不起作用,请检查以确保连接字符串中的 DSN 名称正确。
如果连接字符串正确但仍然无法正常工作,则可能是 PHP 没有配置 ODBC 模块。但是,您应该注意,从 PHP 5(在 Windows 中)开始,默认启用 ODBC 模块。

可悲的是,在撰写本文时,Tiger Logic 并未提供 Linux/Unix ODBC 驱动程序。希望他们能清醒过来,意识到 Windows 很糟糕。

结局。

【讨论】:

    【解决方案2】:

    我最终打开将数据库克隆到 SQL 并使用该方法。尝试让 OMNIS ODBC 驱动程序正常工作实在是太痛苦了。

    【讨论】:

    • 你是如何将它克隆到 SQL 中的?
    【解决方案3】:

    我能够使用这样的 DSN 进行连接:

    odbc:DRIVER=OMNIS;DataFilePath=C:\import\average.df1
    

    【讨论】:

    • 难以置信,我一直在寻找 DAYS 的数据文件参数的名称。非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-20
    • 1970-01-01
    • 2013-11-11
    • 2020-10-11
    相关资源
    最近更新 更多