ORACLE+Midas的遠程數據模塊配置過程[2004年4月18日 10:17]

/////////////////////////////////////////////
//            服務端
//////////////////////////////////////////////
1.Oracle中創建表
  登陸system/manager
  Create table Customer(
   CustID integer,
   CustName varchar(20),
   Memo varchar(200)
   );
2.BCB中File/New/Multitier
CoClassName:CustInfoSvr
3.控件Data Access/DataBase
DataBaseName: CUSTINFO
DriverName:ORACLE
LoginPrompt:false
Params:
SERVER NAME=ORCL
USER NAME=SYSTEM
PASSWORD=MANAGER
4.控件Data Access/UpdateSQL:
Name:CustInfoUpdateSQL
DeleteSQL:delete Customer where CustID=:old_CustID
InsertSQL:insert into Customer values (:CustID,:CustName,:Memo)
ModifySQL:update Customer set
CustID=:CustID, CustName=:CustNamename,Memo=:Memo where
CustID=:old_CustID
5.控件Data Access/TQuery:
Name:CustInfoQuery
UpdateObject:CustInfoUpdateSQL
UpdateMode:UpdateWhereKeyOnly
DatabaseName:CUSTINFO
6.控件Midas/DataSetProvider:
Name:CustInfoProvider
Options< DataSet:CustInfoQuery
UpdateMode:upWhereKeyOnly
7.Main窗體中構造函數
    CustInfoSvr = new TCustInfoSvr (Application);
    if (FindWindow (NULL, "Borland Socket Server") == NULL)
        WinExec (AnsiString (ExtractFilePath(Application->ExeName)
+ "Scktsrvr.exe").c_str(), SW_SHOW);
打開Borland Socket Server並添加端口27241
程序將通過BCB的Socket Server在這個端口發佈服務
//////////////////////////////////////////
///                客戶端
///////////////////////////////////////////
1.File/New/Data Modules
Name:CustInfoData
2.Midas/SocketConnection
Name:CustInfoConnection
Address:127.0.0.1
Port:27241
ServerName:DataModuleSvr.CustInfoSvr
              //注:需打開客戶端和Socket Server才能選擇ServerName
3.Midas/ClientDataSet
Name:CustInfoCds
RemoteServer:CustInfoConnection
ProviderName:CustInfoProvider
4.Data Access/DataSource
Name:CustInfoSource
DataSet:CustInfoCds
5.MainForm構造函數
        try
        {
            CustInfoData->CustInfoCds->Open();
            DataSource = CustInfoData->CustInfoSource;
            DBGrid1->DataSource = CustInfoData->CustInfoSource;
        }
        catch(Exception &e)
        {
            ShowMessage(e.Message);
        }
//配置結束
這個程序主要通過DataSetProvider來提供服務
還沒有深入瞭解DCOM,不過我想這應該就是DCOM的一個應用
DataSetProvider只要提供一個數據集就可以提供遠程調用

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章