程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> delphi7連接mysql5一方法

delphi7連接mysql5一方法

編輯:Delphi

今天開始研究mysql,在網上搜了一下資料,都是要安裝這個,安裝那個,很麻煩。

經過一直摸索、測試,得到一個快速的方法,很實用,只是穩定性有待發現。

先去下載:http://www.justsoftwaresolutions.co.uk/delphi/dbexpress_and_mysql_5.html 

然後把下載到的dbxopenmysql5_dll.zip解壓出來,再把dbxopenmysql50.dll和libmysql.dll都放到工程文件夾下。

在Form上放上TSQLConnection、TSQLQuery、TStringGrid、3個TButton、TLable。

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DBXpress, FMTBcd, StdCtrls, Grids, DB, SqlExpr;

type
  TForm1 = class(TForm)
    SQLConnection1: TSQLConnection;
    SQLQuery1: TSQLQuery;
    StringGrid1: TStringGrid;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Label1: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  SQLConnection1 := TSQLConnection.Create(nil);
  SQLConnection1.DriverName := 'dbxmysql';
  SQLConnection1.GetDriverFunc := 'getSQLDriverMYSQL50';
  SQLConnection1.LibraryName := 'dbxopenmysql50.dll';
  SQLConnection1.VendorLib := 'libmysql.dll';
  SQLConnection1.LoginPrompt := false;
  SQLConnection1.Params.Append('Database=mysql');
  SQLConnection1.Params.Append('User_Name=root');
  SQLConnection1.Params.Append('Password=');
  SQLConnection1.Params.Append('HostName=localhost');
  SQLConnection1.Open;
  if SQLConnection1.Connected = true then
  begin
    SQLQuery1.SQLConnection := SQLConnection1;
    Label1.Caption := 'success!';
  end
  else
    Label1.Caption := 'failed!';
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  i, j: Integer;
begin   
  SQLQuery1.SQL.Clear;
  SQLQuery1.SQL.Add('SELECT * FROM user');
  SQLQuery1.Active := true;
  i := 0;
  SQLQuery1.First;
  while not SQLQuery1.eof do
  begin
    for j := 0 to SQLQuery1.FieldCount - 1 do
      StringGrid1.cells[j, i] := SQLQuery1.Fields[j].AsString;
    SQLQuery1.next;
    inc(i);
  end;
  SQLQuery1.Active := false;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  if SQLConnection1.Connected = true then
    SQLConnection1.Close;
  SQLConnection1.Free;
end;

end.

  經測試,連接OK,查詢OK。

    參考:JackSun's 技術博客 http://www.cnblogs.com/JackSun/archive/2010/12/16/1908145.html

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved