【问题标题】:Using SQL Server 2008 R2 to query Progress OpenEdge10.2使用 SQL Server 2008 R2 查询进度 OpenEdge10.2
【发布时间】:2014-08-13 21:10:30
【问题描述】:

我们刚刚收购了一家在 Progress 上运行一些应用的公司。我们是一家微软商店,需要从 SQL Server 查询数据(短期内)。我们在 SQL Server 上安装了以下 ODBC 驱动程序,但当我尝试添加链接服务器或作为链接服务器下的提供程序时,它们没有显示:

32 位

64 位

当我访问链接服务器时,我看到了这一点。我从来没有对提供者做过任何事情,所以不确定我是否需要添加一些东西。

那里的 IT 专家使用这样的连接字符串在 VB.net 中进行连接,但从未连接 SQL:

Driver={Progress OpenEdge 10.2B Driver};uid=USERNAME;host=HOSTNAME;db=DBNAME;port=2701;pwd=!PASSWORD

我尝试将其用作连接字符串,但没有成功。

有人知道怎么做吗?

谢谢

标记

【问题讨论】:

    标签: sql-server-2008-r2 openedge progress-db


    【解决方案1】:

    这是一个 ODBC 驱动,所以关注Microsoft OLE DB for ODBC Drivers

    以下是名为“Service Now”的 DSN(数据源名称)示例。那可以是任何数据库,可能不是 Progress,但 DSN 就是 DSN。

    http://wiki.servicenow.com/index.php?title=Using_ODBC_Driver_in_SQL_Server_2008_and_2012

    为您的 Progress 数据库创建一个 DSN(在 ODBCAD32 的系统 DSN 选项卡中)并在这些示例中引用它。

    当然,您的 DSN 的位数需要与您的 SQL Server 的位数相匹配。

    警告:

    在不可靠的 ODBC 驱动程序上使用链接服务器会让您头疼。您应该对此进行彻底测试,并注意在许多情况下,例如,如果您通过链接服务器连接两个表,则这两个表中的所有数据都将被拖到 SQL Server 上并连接。您可以使用 OpenRowset 来缓解这种情况,因为它允许您通过链接服务器编写传递查询。

    您需要确保这确实是一项临时措施!

    【讨论】:

    • 谢谢。只是试图找到 64 位 odbc 驱动程序
    【解决方案2】:

    试试 Progress 知识库中的这个条目 - http://knowledgebase.progress.com/articles/Article/P97292

    如果这不适合,那么您可以在 KB 中搜索其他选项。

    【讨论】:

    • 谢谢。只是想获得 64 位 ODBC 驱动程序
    • 如果您的应用程序正在维护中,请联系 Progress 技术支持 - 他们会为您提供明确的答案。
    • 谢谢。我拿到了驾照和驾照,效果很好。唯一的问题是您无法将密码存储在 DSN 中,因此在设置链接服务器时,除了 DSN 名称之外,我还必须使用连接字符串,因为这是我能看到的保存密码的唯一方法
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多