补充本文关键字:“未发现数据源名称且未指定默认驱动程序”、“驱动程序和应用程序之间的体系结构不匹配”
其实标题并不能点出这篇文的核心,这文真正的核心是:驱动兼容!
以前只是对delphi有一般性的学习使用,并没有真正的做过开发,至少没做过数据库的部分
今天想稍微弄一下,却在常规使用ADOconnection时碰上了问题
去百度的话,十有八九要么直接发上一堆代码,要么就是告诉人得配置ODBC数据源,没什么错,然而都没能点出我碰上的这个小而恼人的问题
条件一:操作系统使用的是64位win7
条件二:数据库使用的是64位Mysql
问:装什么位数的Mysql ODBC驱动?
我是按照习惯装的64位驱动,也成功在系统控制面板配置了ODBC数据源
然而这也恰恰是陷阱之所在
按照这个数据源去Delphi里面尝试连接的话,就会是这么个结果:
很明显的、至少在我看来很明显的,因为我用delphi做的是32位开发,所以和64位驱动不兼容了
然后呢,思路岔口就出现了,嗯,我走了错误的一条:去安装32位的ODBC驱动,再次尝试配置ODBC数据源
之所以是”尝试“,便是因为无法配置,32位驱动压根没出现在驱动列表里,无法配置
因为这个问题,我浪费了N多时间,并且绕了很长一段岔路,就不多述了,最终才想明白,或者说,试出来了解决方法:
装32位驱动,再直接用delphi自带的Connection配置功能去生成Connection string
过程可参考:http://www.itdaan.com/blog/2012/12/18/3480faf7e260a9d122011328a4f8d552.html
唯一不同的是,开头的顺序:
最终,我成功连上了数据库,并用grid展示了部分测试数据(然后碰上了中文乱码问题——注意左上角的列标题,囧)
|
请发表评论