程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> DELPHI多層分布式開發(2)(3)

DELPHI多層分布式開發(2)(3)

編輯:Delphi

上面的函數的關鍵除了取得BDE 數據庫別名以外,還聲明了一個變量數組來 存放數據庫別名數據,所以用VarArrayCreate函數建立一個變量數組,其中參數 1: 指定數組范圍;參數2:數組數據類型,由於別名要通過DCOM傳給前台,數據 類型必須設成varOleStr 才有效。 同時還要說明VarArrayCreate函數是在 Variants單元中建立的,所以,在implementation下還需要聲明:

uses Variants;

否則會編譯出錯,,必要時還要加上Unit1。

第二個過程是客戶機提供上來的聯機數據。

procedure TPcSQL.SetDatabaseName(const DBName, UserName,
PassWord: WideString);
begin
try
// 把前台傳來的數據庫別名、用戶上線名稱、用戶上線密碼
// 等三項數據指定給TDatabase控件,並且執行聯機的操作。

Database1.Close;
Database1.AliasName := DBName;
if (UserName<>'') and (PassWord<>'') then begin
Database1.Params.Values['PASSWORD'] := PassWord;
Database1.Params.Values['USER NAME'] := UserName;
end;
Database1.Open;
except
// 如果聯機時發生錯誤,則產生一個exception給前台程序
// 前台程序將會利用到這個exception來判斷是否要把輸入上
// 線數據的窗口激活。

on E: EDBEngineError do
raise Exception.Create('PassWord Required') ;
end;
end;

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