Delphi - MySQL最佳数据感知组件

时间:2010-04-22 20:55:35

标签: mysql delphi delphi-2009

我需要我的应用程序连接到我的Web服务器的MySQL数据库,这是最好的选择。提供数据感知组件。

我尝试了zeos 7,但我一直收到错误:SQL错误:客户端不支持服务器请求的身份验证协议;考虑升级MySQL客户端并且无法修复它。

由于

-Brad

5 个答案:

答案 0 :(得分:8)

@Brad ZEOS组件是连接MySQL的绝佳选择,因为您使用的是旧版本的MySQL客户端,所以会出现该错误。 MySql 4.1引入了一个新的密码散列算法,为了解决这个问题你有两个选择。

1)将您的MySQL客户端更改为使用4.1.1或更新的客户端库。

2)使用OLD_PASSWORD函数

您必须在mysql服务器中运行此脚本。

SET PASSWORD FOR 'user' = OLD_PASSWORD('password');
FLUSH PRIVILEGES;

查看此链接以获取更多信息

Password Hashing in MySQL

答案 1 :(得分:6)

尝试AnyDAC,它提供了对MySQL以及其他受支持的DBMS的强大支持。主要特点是:

  • 高速。
  • 普通和嵌入式服务器。
  • SSL连接。
  • 全系列数据类型,包括ENUM,SET。
  • UTF8和ANSI字符编码。
  • AUTO_INCREMENT列。
  • 完全支持MySQL 5存储过程。
  • 具有多个结果集的批处理命令。
  • 查询执行中止。

答案 2 :(得分:2)

不确定它是否是最好的,但我已经使用ADO组件(TADOQuery,TADOConnection ......在dbGo调色板中查看),在过去的许多Delphi项目中成功连接到MySQL。它是“免费的”,因为它已经与Delphi捆绑在一起。

另外,您的Web主机必须允许“外部”连接(而不仅仅是通过“localhost”)连接到他们的MySQL服务器。

还有MicroOLAP MySQL Delphi Direct Access Components不到300美元。

答案 3 :(得分:1)

我建议Devart(以前称为Core Lab)MyDac

另请查看他们针对多个数据库的UniDac解决方案。

答案 4 :(得分:1)

我从您的消息标签中假设您正在使用Delphi 2009.DbExpress已经走过了漫长的道路并且随Delphi一起提供。这些天网上有很多支持。如果您没有使用Delphi 2009,则自版本6开始提供DbX。

我认为Delphi 2009版本的DbX支持MySQL 5.0。如果没有,您需要更新的DbX驱动程序。你可以在这里获得一个开源驱动程序。

http://www.justsoftwaresolutions.co.uk/delphi/dbexpress_and_mysql_5.html