使用Delphi6的DBExpress组件连接远程的Mysql数据库

发表于:2007-07-02来源:作者:点击数: 标签:
Delphi6新增的DBExpress专门用来对付Mysql,DB2,Interbase, Oracle 等 数据库 ,使用时注意将lib mysql .dll 拷贝到当前目录或系统目录(98:system,NT:system32)下,并保证您的3306端口与远程 服务器 是相通的。 源程序: interface uses Windows , Messages,


Delphi6新增的DBExpress专门用来对付Mysql,DB2,Interbase,Oracle数据库,使用时注意将libmysql.dll

拷贝到当前目录或系统目录(98:system,NT:system32)下,并保证您的3306端口与远程服务器是相通的。

源程序:
interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DBXpress, DB, SqlExpr, StdCtrls, ComCtrls, FMTBcd, Grids,
  DBGrids, Provider, DBClient, DBLocal, DBLocalS, DBTables;

type
  TForm1 = class(TForm)
    SQLConnection: TSQLConnection;
    StatusBar1: TStatusBar;
    Label1: TLabel;
    DataSource1: TDataSource;
    DBGrid1: TDBGrid;
    GroupBox1: TGroupBox;
    Label2: TLabel;
    Password: TEdit;
    User_Name: TEdit;
    HostName: TEdit;
    Label3: TLabel;
    Label4: TLabel;
    Button1: TButton;
    GroupBox2: TGroupBox;
    Label5: TLabel;
    ESQL: TEdit;
    Label6: TLabel;
    Database: TEdit;
    ButtonGo: TButton;
    SQLClientDataSet: TSQLClientDataSet;
    procedure Button1Click(Sender: TObject);
    procedure ButtonGoClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  with SQLConnection do
  begin
    Close;
    Params.Values[@#HostName@#]:=HostName.Text;
    Params.Values[@#UserName@#]:=User_Name.Text;
    Params.Values[@#Password@#]:=Password.Text;
    Params.Values[@#Database@#]:=Database.Text;
    try
      Connected:=True;
      Statusbar1.Panels[0].Text:=@#Connect OK@#;
      ButtonGo.Enabled:=True;
    except
      MessageDlg(@#Connect Error@#,mtError,[mbyes],0);
    end;
  end;

end;

procedure TForm1.ButtonGoClick(Sender: TObject);
begin
  with SQLClientDataSet do
  begin
    Close;
    CommandText:=ESQL.Text;
    Open;
  end;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  SQLConnection.Close;
end;

end.

原文转自:http://www.ltesting.net