delphi 连接mysql
Delphi连接MySQL真麻烦,研究了一天,从网上找了无数文章,下载了无数插件都没解决。最后返璞归真,老老实实用ADO来连接,发现也不是很顺利,但最终还是连接成功了。多少有点心得:ADO各个组件的作用和联系必须清楚,否则设置起来很容易混乱。总结一下用ADO连接MySQL5.1要点:
1、需要下载MySQL的ODBC支持,我用的官网mysql-connector-odbc-5.1.7-win32.msi(这个一般没问题,下载安装即可)
2、通过ODBC管理建立系统DSN(这个也简单,无非是选择MySQL的ODBC,设置服务器、用户名、密码)
3、熟悉ADO控件知道其作用和相互联系。(难点)
TADOConnection作用是通过设置ConnectionString连接字符串(例如:服务器localhost、用户名root、密码123456)连接默认数据库DefaultDatabas(mysql)。
TADOQuarry作用是执行查询语句并保存查询结果,需要设置SQL(如 select * from user;),感觉这里SQL语句只能是一条。该组件与TADOConnection联系密切,Connection属性应该设置为TADOConnection的实例(如conMySQL)。
这样有数据库连接,有查询操作,剩下的任务就是把结果显示出来。这里需要两个组件支持:
TDataSource顾名思义:数据源,是数据显示和查询结果之间连接的一个桥梁,其DataSet属性设为TADOQuarry的实例(qryMySQL)
TDBGrid是显示结果的数据组件,其DataSource属性设置为TDataSource实例即可(如dsMySQL)
4、激活连接以生效,TADOConnection的connected设置为真,另外TADOQuarry的active设置为真。
在实际应用中,不用建立系统DSN,只需要安装ODBC后即可用动态方式创建连接。
procedure TForm1.Button1Click(Sender: TObject);
begin
try
ADOConnection1.ConnectionString:=('DRIVER={MySQL ODBC 3.51 Driver};'+
'SERVER=localhost;'+
'DATABASE=wm;'+
'USER=root;'+
'PASSWORD=mcncc;'+
'OPTION=3;');
ADOConnection1.Close;
ADOConnection1.Open;
except
application.MessageBox('无法连接数据库服务器.请与管理员联系','提示',MB_ICONINFORMATION);
end ;
ADOQuery1.Active:=true;
end;
delphi 连接mysql的更多相关文章
- Delphi连接MySql(待测试验证,使用mysql.pas未通过)
要在一个Delphi程序中调用Mysql数据库,查到有个资料如下,待验证,验证后会给出结果.暂时做个标记 已经验证,验证日期:2018.6.18 验证结果:不可行 验证工具:XE7,mysql5.5. ...
- delphi连接mysql (通过libmysql.dll连接)
首先在窗体上拖拽sqlconnection和sqlquery两个控件: 然后在测试连接中,写入以下代码(注意exe生成目录下需要有dbxopenmysql50.dll和libmysql.dll) SQ ...
- delphi连接mysql不用添加DSN(mysql connector odbc 5.1版)
一.下载安装mysql驱动http://mysql.com/downloads/connector/odbc/二.添加adoconnection,adoquery,使用以下连接字符串http://ww ...
- delphi 连接MYSQL 的方法
需要的控件:(view as form) 1.SQLConnection1: TSQLConnection ConnectionName = 'MYSQLCONNECTION' DriverName ...
- Delphi 连接mysql 的功能, 去除乱码, 需要设置字符集
vDataBaseName := aConfiginiFile.ReadString('DataBaseConfig', 'DataBase', CH_IPC712Db); vServer := aC ...
- Delphi 7连接MySql 5.5.15
原文:http://blog.csdn.net/akof1314/article/details/6822902/ 网上有很多关于Delphi连接MySql数据库的文章,在这里,我只记录下自己测试过的 ...
- Delphi 7连接MySql 5.5.15(转)
网上有很多关于Delphi连接MySql数据库的文章,在这里,我只记录下自己测试过的方法,以备所需.系统环境:Windows XP SP3软件环境:Delphi 7 .mysql-installer- ...
- delphi 7 连接 MySql
网上有很多关于Delphi连接MySql数据库的文章,在这里,我只记录下自己测试过的方法,以备所需.系统环境:Windows XP SP3软件环境:Delphi 7 .mysql-installer- ...
- Delphi能通过SSH登录Linux,连接MYSQL取数么?像Navicat一样
百度随时就能搜,你就懒得搜下.http://tieba.baidu.com/p/671327617 Ssh tunnel通常能实现3种功能1) 加密网络传输2) 绕过防火墙3) 让位于广域网的机器连接 ...
随机推荐
- awesome-java
Awesome Java A curated list of awesome Java frameworks, libraries and software. Awesome Java Ancient ...
- Warning: Name is nonexistent or not a directory
Every time I start up MATLAB, I receive this message: Warning: Name is nonexistent or not a director ...
- 【转】Windows搭建Eclipse+JDK+SDK的Android
原文网址:http://blog.csdn.net/sunboy_2050/article/details/6336480 一 相关下载 (1) Java JDK下载: 进入该网页: http://j ...
- HDU 4825-Xor Sum(trie)
题意: 给你一组数,开始询问给一个数 求组中与该数异或值最大的数. 分析:根据异或的特点 要想得到的异或值最大 尽可能的让两个数的每位都相反 先把给定的一组数建树,数的最后一位对应的节点保存这个数的 ...
- DNS(一)简介
最近学习相关DNS知识,顺便总结下相关内容. 1.什么是DNS DNS(Domain Name System)服务,可以使用域名代替复杂的IP地址来访问网络服务器,使得网络服务的访问更加简单,而且可以 ...
- cocos2d-x 2.x版本中,场景切换各方法调用顺序
假设从A场景切换到B场景,调用各场景方法的顺序为: 如果没有切换效果(transition),则先调用B的init(),再调用A的onExitTransitionStart(),接着调用A的onExi ...
- 傲游浏览器4,傲游浏览器5如何一键批量打开url链接。
傲游浏览器批量打开网址的插件没用了.有很多网友发了方法也无法实现.实际上,是可以实现傲游浏览器4,傲游浏览器5一键批量打开url链接的.我来告诉大家如何来实现.最新的M5都能使用.在收藏夹添加一个收藏 ...
- NOIP2005 篝火晚会
篝火晚会 (fire.pas/c/cpp) [问题描述] 佳佳刚进高中,在军训的时候,由于佳佳吃苦耐劳,很快得到了教官的赏识,成为了“小教官”.在军训结束的那天晚上,佳佳被命令组织同学们进行篝火晚会. ...
- 【VMware虚拟机】【克隆问题】在VMware 9.0下克隆CentOS6.5虚拟机无法识别eth网卡
[日期]2014年4月23日 [平台]windows 8 vmware workstation 9.0 centos 6.5 [日志]1)执行ifconfig命令,输出: 2)查看/etc/udev/ ...
- python 偏函数
functools.partial可以设置默认参数和关键字参数的默认值 Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function).要注意,这里的 ...