C++ Builder下資料庫報表Master/Detail關係功能的實現

來源:互聯網
上載者:User

主從複合結構(Master/Detail)是基於"一對多"的關係,在一個資料庫表中提供詳細的資訊,而這個表是通過另一個資料庫表的外來關鍵字訪問相關記錄的。基於主從複合結構,我們可以在瀏覽一個表中的資料時,同時給出另一個表中與這個記錄相關的所有記錄資訊。Borland C++Builder提供了TTable 和TQuery類型的資料庫控制項,可以方便地實現資料庫表的Master/Detail關係,本文即以BCB中內建的樣本資料庫BCDEMOS為例來說明如何採用不同方法實現資料表的主從複合結構關係,以資料瀏覽功能為例:即在瀏覽主要資料表Customer.db(客戶資訊)記錄的同時,顯示從資料表Orders.db(客戶定單資訊)中與其相關的所有記錄的詳細資料。

TTable控制項相關的基本屬性簡介如下:DatabaseName:設定要開啟的資料庫別名或資料庫目錄路徑;TableName:設定所要關聯開啟的資料庫表檔案名稱;Active:設定為true時資料庫表檔案自動開啟,否則需要用代碼在程式中開啟資料表。TQuery控制項的基本屬性:DatabaseName:設定要開啟的資料庫別名或資料庫目錄路徑;SQL:Tstring類型,所要執行的SQL資料查詢語句,可以直接在對象觀察器(Object Inspector)中雙擊開啟SQL屬性進行編輯,Active:設定為true時自動開啟查詢資料庫表檔案,否則需要用代碼在程式中開啟查詢資料表。兩者與M/D相關的屬性將在下邊結合樣本加以解釋。

一、TTable控制項關聯主、從表實現Master/Detail關係報表

Master/Detail關係最簡單的實現方法是用兩個TTable控制項分別與主表及從表關聯。分別起名為TableMaster和TableDetail,設定TableMaster的DatabaseName為BCDEMOS,TableName為Customer.db;設定TableMaster的DatabaseName為BCDEMOS,TableName為Orders.db。如此即可分別關聯上主從資料表。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.