新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于ADO的復雜數據庫編程的應用

        基于ADO的復雜數據庫編程的應用

        作者: 時間:2016-12-21 來源:網絡 收藏

          0 引言

          ADO(ActiveX Data Objects)是微軟提供對各種數據格式的高層接口(highlevelinterface),該接口已經成為訪問數據庫的新的標準。使用這種接口的數據庫又稱為OLE DB數據庫。由于網絡數據庫的廣泛應用,ADO現在越來越成為數據庫編程人員眼中的寵兒,ADO在復雜數據庫編程方面的功能非常強大。OLE DB數據庫可以使我們方便地訪問各種類型的數據庫,包括關系型或非關系型數據庫、E-Mail和文件系統、文本和圖形、以及各種自定義商用對象。將Delphi提供的系統數據源中的db格式數據轉換為微軟Access格式文件,同時,在轉換過程中,根據選中的數據表,還能生成響應的創建表的SQL語句。

          1.基于ADO的體系結構

          一個基于ADO的單層或兩層應用程序通常由這么幾個部分組成:

          1)用戶界面,其主要部件是數據控件。如果所有的數據訪問都是通過程序實現的,則數據控件是可選的;

          2)一個或多個數據集構件,用于從數據庫引入數據;

          3)一個或幾個TDataSource構件,用于連接數據集與數據控件;

          4)一個連接構件,用于連接到數據倉庫。 連接構件在數據集構件和通過數據倉庫訪問的數據庫之間提供通道。

          基于ADO的應用程序的ADO層由以下幾部分組成:Microsoft ADO 2.1,OLEDB數據庫或用于數據倉庫訪問的ODBC驅動程序,指定的數據庫系統(例如,SQL數據庫)使用的客戶端軟件、數據庫支援系統、數據庫。所有這些外部實體必須存在,并且是基于ADO的應用程序可以使用的。圖1 所示為ADO各組件功能。

          

          2.ADO復雜數據庫應用基本步驟

          1)關閉Delphi中當前所有活動工程,并通過執行New Application命令新建一個工程,此時,系統會自動創建一個空白窗體作為程序的默認操作區。

          2)為了實現對Access數據庫的連接,需要將ADO控件鏈接到目標庫( Access類型)中,設置ADOConnection1的ConnectionString屬性,連接到目標庫中,其他的ADO空間可以銅鼓他實現對目標庫的連接。這可以通過Delphi提供的想到來實現。

          3)將其他ADO控件的Connection屬性都指向ADOConnection1,以實現對目標數據庫的連接,然后設置Database空間的DataBaseName為“Iblocal”.

          4)在窗體的初始化過程中,還需要對一些控件的默認屬性進行設置:首先將本地機上的所有系統數據源顯示在ComBOBox1中,然后將三個按鈕的EnabLED屬性都設置為Fasle:

          Session.GetAliasNames(ComBoBx1.

          items)。

          5)當在ComboBox1中選定一個數據源時,需要將該數據源中所有數據表顯示在ListBox1中,由于本程序需要用到得是db格式的數據文件,所以還需設置一個過濾條件,這可以處理ComboBox1de OnChange事件:

          Session.GeTTableNames(ComboBox1.

          items[ComboBox1.itemindes],'*db',false,false,listbox1.item)。

          6)如果單機“獲取表結構”按鈕,程序將分析選中的表的數據結構,然后生成響應的SQL語句,然后顯示在Memol控件中。在這個方法的實現過程中,還需要處理一個小問題,就是如何獲取對應表字段的數據類型。

          7)當SOL語句創建完畢并顯示在Memol控件中,單擊“創建表”將執行創建表的命令,這個操作將通過ADDCommand1控件來實現:

          Adocommand1.CommandText:=memo1.

          Text;Adocommand1.Execute.

          8)如果單擊“復制數據”按鈕,則將選定表中的所有數據轉移到目標數據庫中對應的表中。

          9)至此,完成工作。保存工程文件,然后運行程序。

          3.結語

          總之,隨著網絡的普及,網絡數據庫越來越現實出其重要性,ADO在這方面有著其獨到的強大功能



        關鍵詞: ADO復雜數據庫編

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 山东省| 汕尾市| 南安市| 泗水县| 沧州市| 蕲春县| 伊吾县| 辽阳市| 当阳市| 剑河县| 蓝田县| 南开区| 盐山县| 武强县| 昔阳县| 峨山| 永宁县| 巴中市| 麻江县| 衡阳市| 湘阴县| 如皋市| 莫力| 贵定县| 盘锦市| 威宁| 遂溪县| 黄骅市| 临沭县| 安徽省| 若尔盖县| 屏南县| 南丹县| 晋州市| 龙游县| 岳阳市| 那曲县| 隆德县| 清涧县| 宽甸| 合水县|