Delphi 以可視化元件建立資料庫應用,元件具備屬性可在設計期或執行期設定。元件面板兩頁資料庫元件:
TDataSource、TTable、TQuery。TDBGrid、TDBEdit、TDBCheckBox,支援瀏覽、編輯、插入、刪除。TTable、TQuery、TStoredProc 負責連接實際資料表並取得資料,稱為資料集元件。設計期可見,執行期不可見。透過 BDE 提供連接。資料控制元件透過 TDataSource 與資料集元件連接,提供可視化介面顯示資料。
三大資料集元件均含不可見 TFields 類型 Fields 屬性,對應資料表或查詢結果的欄位清單。Fields 隨資料集元件啟用動態建立,關閉資料表時消失。設計期與執行期均不可見。亦可用 Fields Editor 建立永久 Fields 物件。
| 元件名稱 | 主要用途 |
|---|---|
| TDataSource | 資料集元件與資料瀏覽元件間傳遞資料的通道 |
| TTable | 存取磁碟資料庫表的媒介,透過 BDE 取得資料,與 TDataSource「對話」使瀏覽元件能有效存取、顯示、編輯資料 |
| TQuery | 用 SQL 語言存取磁碟資料庫表資料,與 TDataSource「對話」實現瀏覽元件對資料庫存取 |
| TStoredProc | 應用程式中存取遠端伺服器預存程序 |
| TDatabase | 登入遠端伺服器資料庫時,建立應用程式與資料庫永久連接 |
| TBatchMove | 複製資料庫表結構或記錄 |
| TReport | 建立資料庫輸出報表 |
甚至無需撰寫程式碼即可存取資料庫。放置步驟:選 Data Access 頁 → 點 Table 圖示 → 表單點擊滑鼠 → 設定屬性:
DatabaseName:指定資料庫路徑(可用別名)TableName:指定具體資料表Active:True 開啟資料表,False 暫不開啟預設包含資料表所有欄位與記錄。雙擊 TTable 圖示開啟 Fields Editor,可控制:建立永久欄位清單(順序、型別不隨實體表結構變更)、指定易讀欄位名稱、指定顯示順序、指定顯示字串、增加合法性驗證、建立計算欄位等。
SQL 語言開發利器,可靈活存取單一或多重資料表記錄,支援本地 Paradox/dBase 及遠端 SQL 伺服器(Client/Server)。放置步驟同 TTable,屬性設定:
DatabaseName:指定資料庫路徑SQL:指定 SQL 陳述式(查詢/修改/插入等)。物件瀏覽器點擊 SQL 屬性開啟字串編輯器輸入注意:TQuery 不用 TableName 指定資料表,而在 SQL 屬性中透過 SQL 陳述式指定。
連接資料集元件(TTable/TQuery/TStoredProc)與資料控制元件(TDBGrid/TDBEdit 等)。資料集元件透過 BDE 連接資料庫但無法顯示資料;資料控制元件提供可視化介面但無存取能力。TDataSource 有機結合兩者,使使用者能互動查詢、修改、插入、刪除資料。
放置步驟:選 Data Access → 點 DataSource → 表單點擊 → 設定 DataSet 屬性指定資料集元件名稱(TTable/TQuery/TStoredProc)。