在C++Builder 5中使用ADO資料庫程式設計 (轉)
在C++Builder 5中使用ADO
---轉載自《世界日報》 (文/凌震)
---- 本文介紹了在 C++Builder 5環境下新增的ADO的使用方法,並給出了一個簡單的例項。
---- 一、ADO概述
---- ADO(Active Data ) 是公司基於OLE 的資料庫模型。它實現了一系列COM介面,透過資料提供者(Data Provr)和資料使用者( Data Consumer)來實現廣義的資料存取。ADO模型一方面簡化了資料存取,例如使用Jet OLE DB Provider可以實現Access資料庫的無DSN連線;另一方面,在等Inte應用中也得到了廣泛的使用。
---- 在C++Builder 5/ 5中諸多新增特性中,ADO資料控制元件的引入是比較引人注目的,它使ADO程式設計和在 6中一樣容易。由於VCL類庫對ADO的封裝更加合理,舊的資料控制元件可以很容易地升級到ADO支援,而不象在VB中某些DAO或RDO控制元件無法相容ADO。
---- 二、使用ADO控制元件
---- 在C++Builder 5中,ADO控制元件實質上是一種資料訪問。如果讀者有過C++Builder先前版本的資料庫開發,就會發現與資料訪問元件相連的資料來源元件(Tdata) 和資料感知元件(如TDBGrid)的使用方法和以前一樣,只需把 TdataSource 連到ADO控制元件上即可。
---- 如果要實現簡單的表操作或查詢,可以使用TADOTable或TADOQuery。更一般地,可以使用TADODataSet控制元件,其基本屬性的設定方法如下:
---- (1)ConnectionString屬性:點選屬性欄中的省略號,出現視窗,選"Use Connection String",按Build按鈕。在接下來的視窗中選擇資料提供者,以微軟的Northwind示例Access資料庫為例,選 Jet 4.0 OLE DB Provider, 按Next按鈕,選擇資料庫的路徑和名。點選Test Connection按鈕可以測試資料庫連線。點選"確定"。
---- (2)CommandText屬性:可以使用CommandText Editor生成語句或Shape語句。
---- 注意,TADODataSet不支援不返回結果集的DML語句,如DELETE,INSERT,UPDATE。如果要使用這些語句,選擇TADOCommand或TADOQuery。
---- 這些ADO控制元件自身已能實現資料庫連線,也可以設定其Connection屬性為一個TADOConnection控制元件名,而在 TADOConnection控制元件中設定 ConnectionString屬性。所有屬性也可以用程式碼在執行期間設定。
---- 三、一個Master/Detail例項
---- 下面以一個簡單的例項說明ADO控制元件的應用。這裡我們用Shape語句實現Master/Detail關係。關於Shape語句的詳細解釋,請參考MSDN文件。
---- 1. 新建一個專案,並在窗體中放置下列控制元件(帶省略號的屬性值先不設定):
名稱控制元件型別屬性屬性值 ADOConnection1 TADOConnection ConnectionString … ADODataSet1 TADODataSet Connection ADOConnection1 CommandText… DataSource1 TDataSource DataSet ADODataSet1 DBGrid1 TDBGrid DataSource DataSource1 ADODataSet2 TADODataSet DataSetField … DataSource2 TDataSource DataSet ADODataSet2 DBGrid2 TDBGrid DataSource DataSource2
---- 2. 設定 ADOConnection1的ConnectionString值
---- 選擇Data Provider為MSDataShape,並設定Northwind資料庫的路徑和名稱。
---- 3. 設定 ADODataSet1的CommandText值如下:
SHAPE { * from Orders} APPEND ({select * from [Order Details]} AS Details RELATE OrderID TO OrderID)
---- 這裡定義了主表Orders和子表Order Details透過OrderID的連線。---- 4. 在ADODataSet1控制元件上右擊,選Fields Editor…->右擊->選Add fields… 或Add all fields,務必選中"Details"項,這是我們在Shape語句中定義的用於子表連線主表的資料集。
---- 5. 設定
----ADODataSet2的DataSetField值,這時可供選擇的值為ADODataSet1Details,選中它,表明與ADODataSet1的Details列相連。
---- 6. 出現在 DBGrid1中的 Details 列,其每個記錄都是DataSet型別的。可以在DBGrid1中隱藏 Details列的顯示:選擇 DBGrid1的Columns屬性,在彈出視窗的工具條上點選 Add all Fields,選中 Details,點選Delete Selected.
---- 7. 執行該,當資料指標在主表Orders中移動時,子表Order Details自動以顯示不同訂單的明細條目。
---- 從以上例項看出, C++Builder 5完全具備開發複雜的ADO應用程式的能力,其強大的VCL控制元件使開發者能集中注意力於資料庫的邏輯與功能設計,而不必關心繁複的常規程式碼和操作。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10748419/viewspace-1003283/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ADO資料庫程式設計入門(轉)資料庫程式設計
- 在Visual C++中用ADO進行資料庫程式設計 (轉)C++資料庫程式設計
- 在DELPHI程式中使用ADO物件存取ODBC資料庫 (轉)物件資料庫
- Visual C++ ADO資料庫程式設計入門C++資料庫程式設計
- ADO程式設計應用 (轉)程式設計
- 使用C#語言操作ADO資料庫 (轉)C#資料庫
- VB6.0使用ADO物件連線資料庫: (轉)物件資料庫
- WINDOWS CE 資料庫程式設計 (轉)Windows資料庫程式設計
- ADO連線資料庫字串大全 (轉)資料庫字串
- 非Access資料庫在VB的程式設計及應用 (轉)資料庫程式設計
- 簡述在ADO中使用介面的抽象資料提供程式以及ADO.NET資料提供程式工廠模型抽象模型
- Delphi資料庫程式設計教程(九) (轉)資料庫程式設計
- 在C++Builder使用TTS(Text To Speech) (轉)C++UITTS
- VB使用ADO物件連結資料庫物件資料庫
- 在ADO.NET中使用Oracle儲存程式(轉)Oracle
- 在C++Builder中建立Access odbc資料來源 (轉)C++UI
- VC的另類資料庫程式設計(轉)資料庫程式設計
- C#下資料庫程式設計(二) (轉)C#資料庫程式設計
- 利用ADO壓縮Access資料庫程式碼資料庫
- Java的資料庫程式設計(JDBC)技術[轉]Java資料庫程式設計JDBC
- 談談VB的資料庫程式設計方式 (轉)資料庫程式設計
- VB資料庫程式設計的幾點心得 (轉)資料庫程式設計
- 用Python實現資料庫程式設計 (轉)Python資料庫程式設計
- 資料庫設計中使用設計模式資料庫設計模式
- 資料庫實驗八 資料庫程式設計資料庫程式設計
- 資料庫實驗五:資料庫程式設計資料庫程式設計
- 使用ADO,多執行緒訪問ACCESS資料庫的開發。 (轉)執行緒資料庫
- 怎樣在C++Builder中建立使用DLL (轉)UI
- Ado.net中SQLServer資料庫連線池(轉)SQLServer資料庫
- 用ADO管理SQL Server資料庫及其裝置 (轉)SQLServer資料庫
- 【資料庫設計】資料庫的設計資料庫
- 使用ADO.NET輕鬆操縱資料庫(一)資料庫
- 使用ADO.NET輕鬆操縱資料庫(二)資料庫
- 在ASP中使用Oracle資料庫(2)(轉)Oracle資料庫
- 封裝ADO訪問資料庫的兩個類 (轉)封裝資料庫
- ADO.NET連線資料庫資料庫
- ado.net 連線資料庫資料庫
- 使用設計模式構建通用資料庫訪問類 (轉)設計模式資料庫