博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Delphi 7连接MySql 5.5.15
阅读量:5098 次
发布时间:2019-06-13

本文共 2838 字,大约阅读时间需要 9 分钟。

1.ODBC方式
    必需要先有MySql的ODBC驱动,我下载的是全安装版,包含MySqlserver、各种所支持的连接、工作台、演示样例数据库、文档,若是无ODBC驱动,能够到官网下载。
①数据源方式
    首先,确认安装了MySql的ODBC驱动。打开“控制面板”→“管理工具”→“数据源”,切换到“驱动程序”页。查看“MySql ODBC 5.1 Driver",例如以下图所看到的:
    切换到"系统DSN"→"加入"→"MySql ODBC 5.1 Driver",例如以下图所看到的:
    弹出MySql数据源配置,数据源名称任意,TCP/IP Server为数据库地址。Userusername,Passwordpassword,Database连接的数据库。点"Test"进行測试连接。例如以下图所看到的:
    点击"OK"后,就可以看到新添加了一个数据源。打开Delphi 7,在窗口上放置TADOConnection、TADOQuery、TDataSource和TDBGrid,相互之间关联。配置TADOConnection的连接字符串。"提供程序"选择"Microsoft OLE DB Provider for ODBC Drivers",下一步,选择"使用数据源名称"。下拉选择刚才配置的数据源,其它的不用再填写,測试连接,例如以下图所看到的:

    在TADOQuery写查询语句。设置Active为True,数据都显示在表格上,例如以下图所看到的:
 
②驱动方式
    跟上面一样,先确认安装MySql的ODBC驱动。打开Delphi 7,在窗口上放置TADOConnection、TADOQuery、TDataSource和TDBGrid,相互之间关联,配置TADOConnection的连接字符串,为下面内容:
1 Driver={MySQL ODBC 5.1 Driver}; Server=127.0.0.1; Database=world; User=root; Password=a123; Option=3; 
    在TADOQuery写查询语句,设置Active为True,数据都显示在表格上,例如以下图所看到的:
2.ZeosLib方式
    ZeosLib是一个用于Borland开发工具的数据库中间件,包含Delphi、C++ Builder和Kylix。

从下载"ZEOSDBO-6.6.6-stable"版本号,解压到目录。

打开Delphi 7,载入工程项目包"...\ZEOSDBO\packages\delphi7\ZeosDbo.bpg",按顺序编译,或者右键选择"Compile All From Here",例如以下图所看到的:

    编译完毕后。再选择"ZComponentDesign.bpl",右键选择"Install",安装组件成功。弹出例如以下对话框:
    再加入所编译完毕的文件夹。即"...\ZEOSDBO\packages\delphi7\build",菜单"Tools"→"Environment Options"→"Library"→"Library path",加入此文件夹。另外,若须要在编写代码时。能进入ZeosLib源码的话,须要加入源码文件夹文件夹。包含:"...\ZEOSDBO\src\core"、"...\ZEOSDBO\src\parsesql"、"...\ZEOSDBO\src\plain"、"...\ZEOSDBO\src\dbc"和"...\ZEOSDBO\src\component"(注意:会在这些文件夹下再次编译单元文件)。

    新建一个应用程序,在窗口上放置TZConnection、TZQuery、TDataSource和TDBGrid,在窗口创建函数里,写入下面代码:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
procedure TForm1.FormCreate(Sender: TObject); 
begin 
  //---------------互相关联------------------------ 
  zqry1.Connection := zcon1; 
  ds1.DataSet := zqry1; 
  dbgrd1.DataSource := ds1; 
  //---------------设置參数------------------------ 
  zcon1.Protocol := 'mysql'
  zcon1.Port := 3306
  zcon1.HostName := '127.0.0.1'
  zcon1.User := 'root'
  zcon1.Password := 'a123'
  zcon1.Database := 'world'
  zcon1.Connected := True; 
  //---------------查询显示------------------------ 
  zqry1.Close; 
  zqry1.SQL.Text := 'SELECT * FROM City'
  zqry1.Active := True; 
end
    当然手动在设计器上进行设置也能够。

由于这里连接的是MySql数据库,须要拷贝MySql数据库client所需的DLL(即:libmysql.dll。这里我安装的是在"...\MySQL\MySQL Server 5.5\lib"里面)拷贝到Windows系统文件夹(一般是"C:\WINDOWS\system32")或者project文件夹下。

程序例如以下图所看到的:

 
    当程序发给别人使用时,须要连同"libmysql.dll"一起发送。若是显示的数据有乱码,这是由于MySQl数据库默认使用UTF-8字符集。则先在查询之前,设置字符集,例如以下代码所看到的:

1
2
3
4
5
6
7
begin 
  zqry1.Close; 
  zqry1.SQL.Text := 'set names gbk'
  zqry1.ExecSQL; 
  zqry1.SQL.Text := 'select * from city'
  zqry1.Active := True; 
end

    或者在TZConnection的Properties属性加入"codepage=gbk"。

3.其它方式

    另外,还有其它的第三方控件能够连接MySql等其它数据库。如:AnyDAC、MyDAC 、DAC for MySQL等等。

扩展资料:
1.MySQL with Delphi
2.Zeoslib Portal :: Home
3.使用ZeosDbo元件與MySQL連線及建立Master/Detail資料表

转载于:https://www.cnblogs.com/gccbuaa/p/7294665.html

你可能感兴趣的文章
.NET MVC伪静态
查看>>
100 个最常用的 PHP 函数
查看>>
88. Merge Sorted Array java solutions
查看>>
347. Top K Frequent Elements java solutions
查看>>
面试总结
查看>>
EL表达式
查看>>
5:练习题
查看>>
【转帖】快学正则表达式
查看>>
bzoj 1070: [SCOI2007]修车 -- 费用流
查看>>
Tomcat设计模式
查看>>
BZOJ1041 HAOI2008圆上的整点(数论)
查看>>
GitHub详细教程
查看>>
分布式事务、两阶段提交协议、三阶提交协议
查看>>
差分约束
查看>>
UINavigationCountroller pop到指定界面
查看>>
NoSQL相关数据库
查看>>
安卓扁平化之路专题(四)Material Design
查看>>
案例:音乐列表
查看>>
npm
查看>>
vue-cli安装
查看>>