最新十七章BorlandDatabaseEngine幻灯片

上传人:夏** 文档编号:569484514 上传时间:2024-07-29 格式:PPT 页数:42 大小:997KB
返回 下载 相关 举报
最新十七章BorlandDatabaseEngine幻灯片_第1页
第1页 / 共42页
最新十七章BorlandDatabaseEngine幻灯片_第2页
第2页 / 共42页
最新十七章BorlandDatabaseEngine幻灯片_第3页
第3页 / 共42页
最新十七章BorlandDatabaseEngine幻灯片_第4页
第4页 / 共42页
最新十七章BorlandDatabaseEngine幻灯片_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《最新十七章BorlandDatabaseEngine幻灯片》由会员分享,可在线阅读,更多相关《最新十七章BorlandDatabaseEngine幻灯片(42页珍藏版)》请在金锄头文库上搜索。

1、十七章十七章BorlandDatabaseEngineBorlandDatabaseEngine1 7 -1 Form WizardnForm Wizard 是一種精靈的方式, 一步一步指導使用者建立資料表的輸出入表單, 請看以下範例說明。計算欄位n依據資料庫正規化的規則, 可計算而得的欄位不能放入資料庫。所以,若某一欄位可由同一資料庫的某些資料表的某些欄位計算而得, 則稱此欄位為計算欄位, 且此欄位不能存入資料庫。例如, 若某一資料表已有國文、英文與數學成績, 則此三科的平均, 並不能儲存入資料庫, 往後若要求其平均, 均要自行計算。為了減輕程式設計師的負擔, BCB 便提供 計算欄位供程式

2、設計師使用。關於計算欄位的使用, 請看範例17-2d查閱欄位n依據資料正規化的規則, 為求欄位內容的單一性, 任何欄位均只能在同一資料庫出現一次。所以, 若某一欄位需要在不同的欄位重覆引用, 則應將此欄位先以代碼表示, 然後任一資料表需引用此欄位時, 均以代碼表示。例如, 學校的成績處理系統, 學生的名字已存在學生基本資料表, 則每次在輸入成績資料時, 便不能再輸入學生姓名與成績, 只能以學生代碼與成績的方式輸入, 以免造成資料的重覆性。所以在學生成績資料表中就沒有學生姓名, 若要取得學生姓名, 則可透過欄位編輯器的查閱欄位至學生基本資料表查閱而得, 請看範例17-2e 。範例17-2cn請以

3、欄位編輯器展示stugrd.db 的內容。範例17-2dn同上範例, 但增加 平均 欄位, 計算國、英及數三科的平均。範例17-2en同上範例, 但增加查閱欄位, 印出學生姓名, 其中含有姓名欄的stuname.db 內容如下圖:主要次要明細(Master Detail)n於學生資料表中, 通常一個學生含有許多次的考試成績, 或於客戶資料表中, 每一個客戶通常都有好幾筆交易, 這就是一種一對多的關係, 例如stuname.db 是學生基本資料表, 資料內容請參閱範例17-2e 。(為了能產生關聯, 其中Id 欄已製作索引。)nstugrd.db 是每位學生的每次考試成績資料表, 如右圖。(為了

4、能與stuname.db 產生關聯, 其中Id 欄已製作索引)n以下範例將介紹如何於觀看學生基本資料表(stuname.db) 時, 能同時顯示指定學生的全部成績, 此即為 主要/ 次要明細 的功能。範例17-2fn以Table 示範主要/ 次要明細表。17 -3 Table 的屬性與方法n上一節使用資料庫連繫元件, 所以不用任何程式即可瀏覽與編輯資料庫內容。其優點是省時省事, 但這些功能對實務的進銷存等問題, 還是不足, 本節要說明的是Table 的屬性與方法如下:資料項屬性n自行使用Table 的方法存取資料庫, 仍然可以使用上一節連繫元件存取資料項, 若不使用連繫元件, 則可使用以下資料

5、項屬性存取資料項。Table1-FieldValues 欄位名稱 ;Table1-FieldByName( 欄位名稱)-型別轉換函數;Table1-Fields-Fields欄位索引-型別轉換函數;在以上敘述中, 型別轉換函式可為AsVariant 、AsSring 、AsInteger 、AsFloat 、AsCurrency 、AsDateTime 及AsBoolean, 其目的是將原始資料轉為與目的物件相同的資料型別。例如, 以下式子均可取得grade.db 的Name欄位。Edit1-Text = Table1-FieldValuesName ;Edit1-Text = Table1-

6、FieldByName(Name)-AsString ;Edit1-Text = Table1-Fields-Fields0-AsString ;n若已將欄位物件(TField) 加入欄位編輯器, 則可使用欄位物件名稱, 代表某一資料項, 例如以下式子是代表存取Name 欄位的內容。Table1Name-Value / 要注意大小寫Ta b le 1Name - AsS t r i ng記錄指標n每一個資料集均有一個記錄指標, 如下圖。此記錄指標的功能即為指向記錄編輯對象, 也就是往後資料表的新增、修改與刪除對象均是此記錄指標所指的記錄。nTable 元件移動記錄指標的方式如下表:開啟或關閉資

7、料表nTable 元件移動記錄指標的方式如下表:範例17-3an示範各種記錄項屬性的用法與指標的移動。增加或刪除記錄n增加或刪除一筆記錄的方法如下表:編輯(Edi t)或寫入(Post)狀態n編輯或寫入狀態的設定方法如下表:循序查詢(不用索引檔)n不用索引檔的資料查詢方法如下表:索引查詢n使用索引查詢將可縮短查詢時間, 索引查詢方法如下表:範例17-3b示範Locate 查詢, 並修改記錄內容。題目分析n於fri.db 中, 查詢 洪子堯, 若資料表中有此記錄, 則將指標移到 洪子堯, 並將 洪子堯 的身高欄位改為110 。範例17-3cn示範Lookup 查詢。範例17-3dn示範Gotok

8、ey, 並修改紀錄內容。範例17-3en示範Findkey, 並修改紀錄內容。範例17-3fn示範紀錄的新增與刪除。17 -4 TQu e r yn前面的Table 元件是一種程序式的語言, 你必須一步一步的告知編繹器你要怎麼作, 例如你必須一步一步的移動記錄, 然後更正資料, 但本節的Query 元件可以下達SQL 敘述, SQL 敘述的優點為它是非程序性語言, 例如你要從fri.db 中取身高大於160 的記錄, 只要下達以下SQL 敘述:Select * From fri Where Height 160 / 身高的欄位為Heightn至於編繹器取資料的過程如何, 你都可以不必了解。SQ

9、L 敘述的另一優點是提升執行速度, 因為SQL 敘述可以在眾多資料表中只取合乎條件的部份欄位出來, 不像Table 元件會將牽涉到的資料表全部提出, 所以只要資料庫系統慢慢龐大之後, 使用Table 元件所撰寫的程式都會造成網路及記憶體很大的負載。使用SQL 敘述的第三優點為SQL 是一種資料庫廠商標準語言, 只要學一次SQL 敘述, 下次你換一種程式語言, 都不用重新學習, 即可以將SQL 敘述, 套上新的語言。對於SQL 敘述不熟的讀者請看第十九章。nQuery 元件可於設計階段與執行階段下達SQL 敘述, 以下我們將分別於設計階段與執行階段說明Query 元件的使用。範例17-4an如何

10、於設計階段執行SQL 敘述。(本例欲連結別名為horng 的資料庫,資料表為stugrd.db)範例17-4bn同上範例, 但於執行階段執行SQL 敘述。範例17-4cn同上範例, 但加上參數的傳遞。範例17-4dn示範如何關聯多個資料表。範例17-4en如何新增、刪除及更正資料。範例17-4fn如何由使用者於執行階段下達SQL 敘述。範例17-4gn同上範例, 但設計一個更具親和性的搜尋資料介面。1 7 - 5 資料庫與統計圖n我們於10-16 節已介紹Chart 元件的用法, 其功能為繪製各種統計圖, 本節則要介紹資料庫的繪圖元件DBChart 。DBChart 是繼承Chart 的元件, 所以其用法大致與Chart 相同, 只是多了連繫屬性DataSouce 與ValueSource 。以下將示範如何將grade.db 的內容以DBChart 表現, grade.db 內容如下:範例17-5an如何將grade.db 的內容以DBChart 表現。结束语结束语谢谢大家聆听!谢谢大家聆听!42

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号