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) 让位于广域网的机器连接 ...
随机推荐
- java正则表达式应用--验证字符串是否为数字(转载)
首先说一下java正则表达式的重点概念: 第一.相关类:Pattern.Matcher 第二.典型的调用顺序是 Pattern p = Pattern.compile("a*b") ...
- bzoj1079: [SCOI2008]着色方案
dp.以上次染色时用的颜色的数量和每种数量所含有的颜色作状态. #include<cstdio> #include<algorithm> #include<cstring ...
- [原]Unity3D深入浅出 - 脚本开发基础(Scripts)
常用脚本事件: Update:每帧调用一次 Start:在第一次Update执行前调用 Awake:脚本实例在创建时调用 FixedUpdate:每个固定物理时间间隔调用一次 LateUpdate:每 ...
- (转载) ExtJs大比拼JQuery:Dom文档操作
此次不生产水,做一次搬运工. http://www.cnblogs.com/lipan/archive/2011/12/07/2269815.html
- poj2406 周期
脑残wa了一次 var s:ansistring; ans,i,k,m:longint; pre:..] of longint; function max(x,y:longint):longint; ...
- SCOI2007修车
这样也行?这构图把我惊呆了: 把每个工人拆成N个点.记为A[i,j]表示第i个工人修倒数第j辆车. 每个车跟所有N*M个工人拆出的点连边.流量为1,费用为time[i,j]*k. 源和每辆车连边,N* ...
- jquery的API查看 / prepend、prependTo、append、appendTo的用法
理解jquery设计思想 记住大部分jquery API的使用 英文:http://api.jquery.com/ 中文: http://www.css88.com/jqapi-1.9/ http:/ ...
- InstallShield高级应用--检查是否安装ORACLE或SQL Server
InstallShield高级应用--检查是否安装ORACLE或SQL Server 实现原理:判断是否存在,是通过查找注册表是否含有相应标识来判断的. 注意:XP与WIN7系统注册表保存方式不一 ...
- ZOJ 2283 Challenge of Wisdom
题意:在一个n * m的地图里,有p个宝藏,每次只能向横纵坐标增加的方向走,问最少走几次能把宝藏都拿走. 解法:按横坐标排序,纵坐标的一个不下降子序列就是一条合法路径,要求多少条不下降子序列可以覆盖所 ...
- POJ 2435Navigating the City(bfs)
题意:给你一个地图,’+’代表十字路口,‘-’‘|’表示街道,‘.’表示建筑物,‘s’,’E’ 起点和终点.输出从起点到终点的的 最短路径(包括方向和沿该方向的经过的十字路口数) 分析:ans[i][ ...