分享:win7系统下 使用vfp 连接 mysql 数据库
网上搜索了有关mysql和vfp的教程,基本上不尽人意,难以实现vfp连接mysql数据库,没办法,只好自己研究摸索。。。搞了两天,卸载了再安装,安装了再卸载,总算成功了。
现在把我经历分享给大家,希望有需要的狐友不要再和我一样走弯路了!
首先,去官网下载mysql,我的系统是win7,64位的,最初我下载了最新版的mysql 以及connector ODBC,也是64位的,和操作系统匹配,但是和vfp不匹配,捣鼓了很久,走了很多弯路,原来根本不行。
注意:由于vfp是32位的,所以mysql和connector ODBC必须是32位的,否则会报错,网上搜错误代码,给你什么答案都有。
我下载的是mysql 5.7版,32位最后的版本,以及最新的32位的connector ODBC 8.0。
其次,安装好之后,就是配置mysql服务器了。这里又碰到一个坑,控制面板里的ODBC管理器里没有安装好的connector ODBC 8.0 驱动可以选。又捣鼓了很久,网上也没看到有关这个的介绍,可把我急死了。
我把网上搜索到的安装方法几乎一一试过,没有一个是成功的,吐血!
最后我想到,控制面板里的ODBC管理器可能是64位的,问题就出在这个管理器上,它应该也是32位的才行!,于是去windows的系统文件夹里去找这个ODBC管理器。终于在c:\windows\syswow64 里找到32位的ODBC管理器 odbcad32.exe
在命令行里运行这个管理器,果然找到了安装好的odbc 驱动,于是赶紧配置了mysql,然后打开vfp,尝试连接,果然成功,开心。。。。。。
怕忘记怎么连接mysql数据库,又赶忙写了个连接类connector,却又不知道该添加什么其他功能(万能的网友可以建议一下)。。。
代码如下:
程序代码:
************************************************** *-- 类: connector (d:\documents\visual foxpro 项目\myclass.vcx) *-- 父类: custom *-- 基类: custom *-- 时间戳: 02/19/24 11:39:14 PM * DEFINE CLASS connector AS custom Height = 17 Width = 66 *-- mysql数据源 datasource = "" *-- mysql用户名 user = "" *-- mysql密码 password = "" *-- -1表示mysql连接失败;大于0成功 handle = -1 Name = "connector" *-- 连接mysql数据库,成功handle返回非零,失败返回-1 PROCEDURE connect PARAMETERS cdatasourcename,cuser,cpassword IF PARAMETERS()=0 cdatasourcename=this.dataSource cuser=this.user cpassword=this.password ELSE this.dataSource=cdatasourcename this.user=cuser this.password=cpassword ENDIF this.handle=SQLCONNECT(cdatasourcename,cuser,cpassword) RETURN this.handle ENDPROC *-- 断开mysql连接 PROCEDURE disconnect PARAMETERS nhandle IF PARAMETERS()=0 nhandle=this.handle else this.handle=nhandle ENDIF IF nhandle>0 SQLDISCONNECT(nhandle) ENDIF ENDPROC PROCEDURE Destroy this.disconnect() ENDPROC ENDDEFINE * *-- EndDefine: connector **************************************************