【发布时间】:2011-04-23 16:30:50
【问题描述】:
我无法从 Delphi XE Professional 中以任何方式访问任何数据库。我访问数据库的意思是:
- 让实时数据库通过 对象检查器中的组件, 设置连接属性时 为真
- 使用数据资源管理器创建 并探索数据库连接
编辑:
排序!!
核心问题是与数据库的通信,特别是 IDE 生成的通信以及使用驱动程序构建的任何代码都存在问题。
混淆和掩盖子问题是:
- DLL 丢失或放错位置。
- Data Explorer 不完全支持 dbExpress 驱动程序。
- Chee-Yang Chau 在编写 dbxFirebird 驱动程序时发现了 2009 IDE 代码中的一个错误,该错误限制了驱动程序与 Delphi 的静态链接。不知道这个错误是否会延伸到 2010 或 XE。
- 使用对象检查器时,很容易导致 IDE 将更改的连接参数恢复为其默认值。
- 某些驱动程序的默认值不正确(例如,假设客户端 dll 始终为 gdb32.dll,无论数据库是 Interbase 还是 Firebird)。
- 安装两个版本的 Interbase 导致数据库通信出现一些冲突 - 工具生成的服务器名称很奇怪;数据库的视图取决于所使用的 Interbase 工具的安装。
- 可用的文档日期不定;指不同的版本;因此往往显得矛盾。
结束编辑:
尝试的方法:
- 多个数据库
- 多个不同的驱动程序/组件
- 通过其他外部工具(例如 IBSQL 和 Flame Robin)访问数据库。
- 就 SO 提出问题(here 和 here)。
- 在 Firebird、Embarcardo 和 Flame Robin 的支持论坛上提出问题。
环境:
- 操作系统:Windows 7 Ultimate 64 位:
- Delphi Embarcadero® RAD Studio XE 专业版 15.0.3953.35171
- 数据库:W1-V2.5.0.26074 Firebird 2.5(64 位)
- 连接技术:dbExpress
【问题讨论】:
-
您不需要企业或架构师或其他名称吗?
-
@Chris 我已经说过了,但你为什么不购买 devart 驱动程序呢?你花在这上面的时间肯定已经超过了成本很多倍。
-
您必须使用 32 位 fbclient.dll,因为 Delphi IDE 是 32 位的(对于 32 位应用程序,您必须使用 32 位的 fbclient.dll,即使服务器是 64 位)
-
我知道你不想花更多的钱,但到达终点的最快途径是支付升级到 Enterprise 或 Architect 的费用。否则,有些人正在通过 DbGo (ADO) 将 Delphi XE Pro 与 Interbase 和 Firebird 一起使用。
-
@Warren - 就 Enterprise 或 Architect 版本而言,并不是我不想花更多的钱 - 我买不起,即使目前提供的升级.如果我目前的调查结果成功,我将购买 Devart 驱动程序 - 这看起来很有希望。
标签: database delphi configuration firebird delphi-xe