1. gzyueqian
      18529173453
      首頁 > 新聞中心 > > 正文

      用BCB開發多層數據庫應用程序

      更新時間: 2007-05-22 13:26:13來源: 粵嵌教育瀏覽量:767


        繼Client/Server結構在MRP、MIS等數據庫應用系統紅火之后,多層結構(Multi_Tier)開始登場,許多廠商提供了各種中間件。本文描述了用Borland C++ Builder(以下簡稱BCB)所提供的Multi_Tier構件來開發多層數據庫應用程序的方法。

        一、 Multi_Tier結構的實現
        C++ Builder提出的Multi_Tier是把以前的Client/Server前端應用程序里的BDE、SQL Link和DataModule拿到另一臺NT服務器上,也叫應用程序服務器,前端機只留下應用程序及DBClient.DLL,而移到應用程序服務器上的DataModule則變成一個COM程序,此COM程序是通過BDE 、SQL Link傳輸SQL到后端數據庫,并從后端數據庫存取數據,然后由Tdatasetprovider組件把讀取的Dataset壓縮并切割成一段一段的數據包(data packet)通過DCOM的機制傳給前端機,前端機上的DBClient.DLL會把接收到的數據包再還原成DataSet傳給程序中的TclientDataSet組件,Data Control組件就可以TclientDataSet為數據源對之進行操作,而COM程序會把修改后的DataSet正確地寫回后端數據庫。

        與Client/Server結構相比,Multi_Tier結構具有很多優點,主要表現在:

        1. 大幅度地減少數據庫服務器的負擔。因為多了一層應用程序服務器,接管了眾多客戶機的Connection處理,數據庫服務器只需處理應用服務器的Connection,這樣就不會因為用戶(Client)數的增加而影響系統的運行性能。

        2. 前端機應用程序安裝方便。Multi_Tier結構中,把以前的Client/Server前端應用程序內的BDE、SQL Link和DataModule拿到數量很少的應用服務器上,前端機只負責Use Interface的處理,只需要一個單純的EXE文件(包括DBClient.DLL),可以在應用服務器上開發前端應用程序,通過網絡復制到各個前端機上。

        二、 環境配置
        1.后端數據庫服務器配置

        包括數據庫系統及數據庫提供的中間件。本文具體環境為:

        VMS操作系統上安裝Oracle7.3。

        2.應用程序服務器配置

        (1)在PC Server上安裝Windows NT ,使它成為一臺Microsoft NT Server;

        (2)保證網絡的暢通,即網絡層的通訊協議的暢通;

        (3)安裝數據庫系統提供的中間件,本文是Oracle提供的Oracle for NT 的SQL?NET產品,執行SQL?NET Easy Configuration工具,設定Oracle的TNS連接參數,加入一個數據庫別名,連上后端的Oracle數據庫服務器;

        (4)安裝BDE Administrator,設定BDE的參數內容,具體步驟如下:

        Databases中先新建一個別名,本文是Oracle2,其中的參數改為:

      server name   數據庫服務器的別名
      net protocol   tns
      user name    oracle的用戶名/口令

        (5)安裝C++Builder 5軟件,用于開發應用服務器和客戶端的程序。

        3.前端客戶機配置

        (1)安裝操作系統Windows 95/98,本文是Windows 98,保證各前端機與應用服務器在TCP/IP層上連通;

        (2)從NT服務器的WinntSystem32目錄下復制DBClient.DLL到本機的WindowsSystem;

        (3)如操作系統為Windows 95,必須安裝DCOM程序,因為Windows 98 與Windows NT Workstation已經內含DCOM程序,不需另外安裝;

        (4)在應用服務器上開發應用程序,通過網絡復制。

        三、實現步驟
        下面是一個對材料庫存表進行維護的Multi_Tier結構數據庫管理程序,用戶可以在前端的Windows 98機上通過中間的NT應用服務器對Alpha機上的Oracle數據庫上的庫存表進行維護。

        1.應用服務器上程序的開發

        (1)打開一個新工程,然后點主功能選單NEW中的RemoteDataModule,并填入Coclass Name項,這里是KCBB。

        (2)在RemoteDataModule上放置DATABASE,TABLE,DataSetProvider三個組件,并分別設置屬性如下:

      database1 aliasname   oracle2
           databasename  test
           connected    true
      table1 databasename   test
          tablename    kcb
          active     true
      datasetprovider  dataset  table10
               expo0rted t rue

        前六行目的是連上后端數據庫Oracle2的表KCB,后兩行目的是DataSetProvider組件將表KCB作為DATASET傳給前端程序。

        (3)在Forms1加一個Lable組件,上面寫上“服務器應用程序已被啟動”,這樣運行時屏幕上就會出現這句話,說明程序已被調用。

        (4)為了前端程序能連上此COM程序,必須把它注冊到服務器的注冊表內,可通過運行Regedit.EXE,根據Coclass Name尋找注冊名來確認注冊是否成功。

        2.前端程序的開發

        (1)打開一個新工程,拖拉一個DCOMConnection組件、一個ClientDataSet組件、DataSource組件、Dbgrid組件到FORM1上。

        DCOMConnection1設置如下屬性:

      computername 應用服務器的機器名
      servername   project1.kcbb

        ClientDataSet1設置如下屬性:

      remoteserver dcomconnection1
      provider   table1
      active     true

        DataSource的DATASET設置為ClientDataSet1;

        Dbgrid的DataSource設置為DataSource1。

        (2)拖7個Button來當作功能按鈕 ,分別設為新增、修改、刪除、取消、寫入、重新讀取、返回 。由于BCB提供了ActionList組件,其中包括了StandardAction,可以利用這些標準的Action來編寫Dataset的編輯功能, 只要把Button的屬性Action依照每Button所賦予的功能指向對應的ActionList項即可。

        ,將調試好的前端程序復制到所有的前端機中,運行調試,一個Multi_Tier結構的數據庫應用程序就可投入使用了。


        本文僅僅描述了開發Multi_Tier結構的數據庫應用程序的一種基本方法,還需要我們在實際應用中進一步完善,如怎樣提高數據在其上的傳輸效率及數據傳輸中的出錯處理等都需要進一步地編程實現。

      免費預約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 亚洲欧美日韩国产综合网 | 亚洲精品国产高清一线久久 | 色一情一区二区三区四区 | 日本欧美亚洲日韩在线视 | 偷窥国产女洗浴在线观看视频 | 亚洲一级免费在线免费视频 |