首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi 2009 使用 dbExpress 組件連接 MySQL 資料庫實作登入頁面

     編輯:Delphi

前言

在 Delphi 2009 中開發資料庫應用程式時,選擇合適的資料存取元件至關重要。雖然 ADO (dbGo) 是常見選擇,但對 MySQL 的支援並不理想。本文將示範如何使用 dbExpress 元件連接 MySQL 資料庫,並建立一個簡單的登入頁面。

建立資料模組

首先建立一個資料模組,這將集中管理資料庫連接元件。

建立資料模組

設定 dbExpress 連接 MySQL

為了使用 dbExpress 存取 MySQL,必須將 MySQL 安裝目錄下 bin 資料夾中的 libmySQL.dll 複製到 Delphi 安裝目錄的 bin 資料夾中。這是 dbExpress 驅動程式正常運作的必要條件。

在資料模組上放置一個 TSQLConnection 元件,並進行以下關鍵設定:

  • Driver:選擇 MySQL
  • Database:指定資料庫名稱
  • User_Name / Password:資料庫帳號密碼
  • LoginPrompt:設為 False,避免每次連線都彈出認證對話框

設計登入表單

建立一個新表單作為登入頁面,建議設定以下屬性以提升使用者體驗:

  • BorderStyle := bsDialog:固定對話框樣式
  • Position := poDesktopCenter:螢幕置中顯示

登入表單設計

表單上放置兩個 TEdit (帳號、密碼)、兩個 TButton (登入、取消) 以及一個 TSQLQuery 元件用於執行查詢。

登入邏輯程式碼實作

核心邏輯在「登入」按鈕的 OnClick 事件中:

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;
    Exit;
  end;
  if password = '' then
  begin
    ShowMessage('請輸入密碼!');
    Edit2.SetFocus;
    Exit;
  end;

  // 執行查詢
  LoginSQLQuery.SQLConnection := DataModule1.MySQLConnection;
  LoginSQLQuery.CommandText := 'SELECT * FROM T_USR WHERE USID = ' + QuotedStr(username) + ' AND PWD = ' + QuotedStr(password);
  LoginSQLQuery.Open;
  recordcount := LoginSQLQuery.RecordCount;

  if recordcount < 1 then
    ShowMessage('使用者名稱或密碼錯誤!')
  else
    ShowMessage('登入成功!');
end;

安全性提醒:實際專案中應使用參數化查詢 (Params) 避免 SQL 注入風險,並對密碼進行雜湊處理而非明文儲存。

取消按鈕處理

procedure TFrmLogin.Button2Click(Sender: TObject);
begin
  Close;
end;

總結

透過 dbExpress 元件,Delphi 2009 可以高效、穩定地連接 MySQL 資料庫。本範例展示了從資料模組建立、驅動程式部署、連線設定到登入邏輯實作的完整流程,為資料庫應用程式開發奠定基礎。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved