您的位置:首页 > 编程语言 > Delphi

Delphi2009中使用dbExpress组件访问MySql(登陆页面)

2008-10-08 10:52 633 查看
首先新建数据访问模块(Data Module),如下图:



这里使用MySql数据库,考虑到dbGo组件(即ADO)对MySql的不友好,使用dbExpress组件行进数据库的访问。

首先添加一个TSqlConnection控件。

为了使用dbExpress访问数据库,需要把MySql的安装路径下bin目录下的libmySQL.dll文件拷贝至Delphi安装路径的bin目录下。

如上图所示作必要的设置即可。(LoginPrompt属性设置成false以关闭每次连接数据库时的认证对话框)

创建一个Form作为登陆页面用,如下图所示:



可对Form的属性作必要的设定(如:BorderStyle:bsDialog; Position:poDesktopCenter)

添加一个TSQLQuery控件在于其上。后台的代码如下所示:

unit LoginUnit;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, DB, ADODB, WideStrings, DBXMySql, SqlExpr, FMTBcd,

DBClient, SimpleDS;

type

TFrmLogin = class(TForm)

Bevel1: TBevel;

Label1: TLabel;

Label2: TLabel;

Edit1: TEdit;

Label3: TLabel;

Edit2: TEdit;

Button1: TButton;

Button2: TButton;

LoginSQLQuery: TSQLQuery;

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

FrmLogin: TFrmLogin;

implementation

uses DataModuleUnit;

{$R *.dfm}

procedure TFrmLogin.Button1Click(Sender: TObject);

var

username, password : string;

recordcount : Integer;

begin

username := Edit1.Text;

password := Edit2.Text;

if username = '' then

begin

ShowMessage('ユーザ名を入力してください!');

Edit1.SetFocus;

end

else if password = '' then

begin

ShowMessage('パスワードを入力してください!');

Edit2.SetFocus;

end

else

begin

LoginSQLQuery.SQLConnection := DataModule1.MySQLConnection;

LoginSQLQuery.CommandText := 'SELECT * FROM T_USR WHERE USID =' + username + ' AND PWD = ' + password;

recordcount := LoginSQLQuery.RecordCount;

if recordcount < 1 then

begin

ShowMessage('ユーザ名又はパスワードが違います!');

end

else

begin

ShowMessage('ログインします!');

end;

end;

end;

procedure TFrmLogin.Button2Click(Sender: TObject);

begin

close;

end;

end.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: