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)