Delphi 2010的Sybase驱动程序

3
我们正在从Delphi 6迁移到Delphi 2010,之前我们使用BDE引擎从Delphi 6连接到Sybase数据库。发现Delphi 2010不支持BDE。
我们尝试使用dbexpress,但是无法捕获由Sybase抛出的异常(引发错误)。
请问除了dbexpress之外,是否有其他驱动程序可用于从Delphi 2010连接到Sybase数据库。
谢谢。
顺祝商祺,
AS

假设您已经拥有 Delphi 2010 Pro,您可能会对现在以优惠价格升级到 Delphi XE Enterprise 感兴趣。这将为您提供与 Sybase 的 dbExpress 连接,这正是您所需要的。 - Warren P
5个回答

5
您可以使用AnyDAC来连接以下数据库:
  • Sybase SQL Anywhere(使用AnyDAC本地驱动程序)
  • Sybase Adaptive Server(使用AnyDAC ODBC桥接)。

3
我猜测你的真正问题是你使用的是Delphi的专业版而不是企业版。据我所知,BDE仍然可以与Delphi 2010一起使用。
在Delphi 6中,专业版允许连接到远程数据库。在Delphi 6和Delphi 2010之间的某个地方,政策发生了变化。
无论如何,你真的需要放弃BDE并向前迈进。
编辑:(jeroen) 关于关系访问的BDE(又名BDE SQL Links技术自2002年以来已被弃用,大约是在Kylix和Delphi 6引入dbExpress约两年后。

很可能是BDE的事情让其他人进行了负面评价;也许可以更详细地解释一下BDE的弃用(我认为自Delphi 2005以来已经删除了BDE客户端/服务器驱动程序;对于Paradox/xBase等内容使用BDE仍然可以,但已被弃用),或者指向涵盖BDE的SO问题。如果这样做,+1。 - Jeroen Wiert Pluimers
据我所知,一点错也没有。我的XE安装程序没有Sybase驱动程序。也许像Jeroen说的那样,它们在某个Delphi版本中被移除了。BDE可以使用ODBC,这对OP可能有用。我自己从未使用过它。 - Mikael Eriksson
BDE仍可在Delphi XE中使用。我不确定它是否包含XE安装程序中的所有驱动程序,但如果您有先前的Delphi版本或仅有BDE 5.x安装程序,则仍可以使用相同的驱动程序来连接任何数据库。 - jachguate
专业版没有附带BDE SQL Links(但Interbase可能有),它允许连接到支持的关系型数据库管理系统。 - user160694

2

在Delphi的企业版中包含了dbExpress的Sybase驱动程序。如果没有这个选项,您可以使用Professional版本中包含的dbGO(ADO)。


2
您可以尝试一个解决方法:
  1. 安装 Delphi 6
  2. 将 BDE 更新到最新版本(Embarcadero 网站上应该有一些更新,希望如此)
  3. 安装 Delphi 2010
据我所知,可用的 SQL 链接不应被删除(否则会破坏旧版本),并且它们应该仍然在 Delphi 2010 中工作。但这只是一个权宜之计。
Devart 的 UniDac 可以连接 Sybase 而不使用 dbExpress,但我从未使用过。

什么连接? - user160694
谢谢,它运行得很好。我们没有遇到太多问题,只有一些可以管理的小问题。 :) - SSE

1

你可以尝试使用ZEOSLIB,它包含了SyBase的连接功能,以及许多其他SQL数据库。

据我所见,它要求你移除你的查询/表对象,并用它自己的表和查询替代对象来替换它们,但是从BDE迁移到ADO/dbGo或dBExpress也是一样的。

而且你真的应该将BDE从你的应用程序中移除。它已经死透了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接