




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第8章:開發(fā)BDE數(shù)據(jù)庫應(yīng)用程序。本章內(nèi)容:學(xué)習(xí)如何使用BDE連接數(shù)據(jù)庫表和查詢組件。學(xué)習(xí)開發(fā)簡單的數(shù)據(jù)庫應(yīng)用程序。8.1將數(shù)據(jù)庫與業(yè)務(wù)發(fā)展局連接起來。數(shù)據(jù)庫引擎BDE是德爾福訪問數(shù)據(jù)庫的驅(qū)動程序之一。它提供了訪問數(shù)據(jù)庫的應(yīng)用編程接口庫。通過BDE,不僅可以訪問本地數(shù)據(jù)庫,如Paradox、dBASE、FoxPro、Access等。還可以訪問遠(yuǎn)程大型數(shù)據(jù)庫,如InterBase、Oracle、Sybase、Informix、微軟SQL server和DB2。8.1.1 BDE體系結(jié)構(gòu),使用BDE開發(fā)數(shù)據(jù)庫應(yīng)用程序應(yīng)該遵循通常的數(shù)據(jù)庫體系結(jié)構(gòu)。除了數(shù)據(jù)源和數(shù)據(jù)集之外,BDE應(yīng)用程序還應(yīng)包括以下兩
2、個方面:一個或多個用于控制事務(wù)和管理的數(shù)據(jù)庫組件,一個或多個用于隔離數(shù)據(jù)訪問操作和管理數(shù)據(jù)庫組的會話組件,通過BDE訪問數(shù)據(jù)庫體系結(jié)構(gòu),8.1.2使用BDE管理器,應(yīng)用程序通過數(shù)據(jù)庫別名訪問數(shù)據(jù)庫,這需要在BDE管理器中建立和配置。打開bde管理器的方法如下:啟動borland Delphi 7BDE管理員,BDE管理器顯示窗口,BDE管理器簡介BDE管理器窗口,配置頁簽用于配置連接數(shù)據(jù)庫時使用的參數(shù);數(shù)據(jù)庫選項(xiàng)卡用于創(chuàng)建和管理數(shù)據(jù)庫別名。只有在配置數(shù)據(jù)庫后,才能建立數(shù)據(jù)庫的別名。定義子窗口是左側(cè)子窗口選項(xiàng)配置窗口,該窗口的所有配置參數(shù)將保存在Idapi32.cfg文件中。由BDE數(shù)據(jù)庫驅(qū)動的
3、本地數(shù)據(jù)庫驅(qū)動程序的主要類型用于訪問本地數(shù)據(jù)庫,如Paradox。數(shù)據(jù)庫驅(qū)動程序用于訪問具有C/S結(jié)構(gòu)的數(shù)據(jù)庫,如DB2、InterBase、Oracle等。為了確保數(shù)據(jù)庫的正確連接,這些數(shù)據(jù)庫在客戶端計算機(jī)上有相應(yīng)的BDE驅(qū)動程序。ODBC驅(qū)動程序,任何ODBC驅(qū)動程序都可以用于BDE。目前ODBC支持幾乎所有的數(shù)據(jù)庫,所以Delphi也可以訪問幾乎所有的數(shù)據(jù)庫。配置數(shù)據(jù)庫別名的應(yīng)用程序只能通過數(shù)據(jù)庫別名訪問數(shù)據(jù)庫中的數(shù)據(jù)。因此,正確建立數(shù)據(jù)庫別名是開發(fā)數(shù)據(jù)庫應(yīng)用程序的一個非常重要的步驟。這里有幾個典型的例子來說明通過BDE管理器建立數(shù)據(jù)庫和數(shù)據(jù)庫別名的方法。示例13360配置互庫數(shù)據(jù)庫并建
4、立一個互庫數(shù)據(jù)庫別名。已知該數(shù)據(jù)庫的庫文件是:d3360 InterBase示例數(shù)據(jù)庫雇員。然后,位于BDE管理器右側(cè)的“定義”窗口將顯示用于配置InterBase數(shù)據(jù)庫的所有參數(shù)。請按如下方式設(shè)置服務(wù)器名和用戶名:服務(wù)器名:d:數(shù)據(jù)庫示例數(shù)據(jù)庫雇員。此時,BDE管理窗口的顯示內(nèi)容如下圖所示。如果interbase左側(cè)出現(xiàn)綠色三角形圖標(biāo),表示數(shù)據(jù)庫的配置參數(shù)已被修改。單擊工具欄上的應(yīng)用按鈕保存修改后的數(shù)據(jù)庫配置。(2)創(chuàng)建數(shù)據(jù)庫間別名數(shù)據(jù)庫別名本質(zhì)上是一個連接到數(shù)據(jù)庫的接口,可以為同一個數(shù)據(jù)庫創(chuàng)建多個別名。方法:BDE管理器-數(shù)據(jù)庫-右擊-新建,彈出“創(chuàng)建新數(shù)據(jù)庫別名”對話框。選擇“inter
5、base”后,可以創(chuàng)建新的數(shù)據(jù)庫別名。如果要修改數(shù)據(jù)庫別名,請?jiān)谶x擇別名并修改后單擊應(yīng)用按鈕。例2:以Access數(shù)據(jù)庫為例,詳細(xì)說明了ODBC的用法。(1)打開ODBC管理器:Delphi數(shù)據(jù)庫瀏覽,然后打開一個SQL瀏覽窗口,在“數(shù)據(jù)庫”子窗口中選擇根目錄,然后選擇該窗口的對象OBDC管理員菜單,然后打開一個名為ODBC數(shù)據(jù)源管理器的對話框,ODBC數(shù)據(jù)源管理器對話框,并創(chuàng)建一個新的數(shù)據(jù)源對話框。(2)創(chuàng)建新的數(shù)據(jù)源方法:選擇Microsoft Access驅(qū)動程序(*)。ODBC數(shù)據(jù)源管理器中的驅(qū)動程序添加并創(chuàng)建一個新的數(shù)據(jù)源對話框,以完成在顯示的對話框中輸入數(shù)據(jù)源名稱和相應(yīng)的文本描述。
6、如果此時按下確認(rèn)按鈕,將會生成數(shù)據(jù)源。建立數(shù)據(jù)源后,有必要繼續(xù)設(shè)置與數(shù)據(jù)源對應(yīng)的數(shù)據(jù)庫。設(shè)置與數(shù)據(jù)源對應(yīng)的數(shù)據(jù)庫的方法:(1)點(diǎn)擊“創(chuàng)建”按鈕,為新的數(shù)據(jù)源創(chuàng)建一個數(shù)據(jù)庫;(2)單擊“修復(fù)”按鈕修改現(xiàn)有的數(shù)據(jù)庫連接。此方法適用于修改現(xiàn)有數(shù)據(jù)源。ODBC Microsoft Access安裝對話框,創(chuàng)建數(shù)據(jù)庫對話框,(3)創(chuàng)建與ODBC數(shù)據(jù)源相對應(yīng)的數(shù)據(jù)庫單擊對話框窗口中的“創(chuàng)建”按鈕,然后將顯示“創(chuàng)建新數(shù)據(jù)庫”對話框窗口。在此窗口中,您可以選擇數(shù)據(jù)庫文件所在的文件夾,輸入要創(chuàng)建的新數(shù)據(jù)庫的名稱,然后單擊“確定”按鈕。如果創(chuàng)建成功,系統(tǒng)將顯示“數(shù)據(jù)庫* * * *創(chuàng)建成功”,當(dāng)操作再次返回時,點(diǎn)
7、擊該對話框中的“確定”按鈕,完成數(shù)據(jù)庫創(chuàng)建和數(shù)據(jù)源配置。(4)在業(yè)務(wù)數(shù)據(jù)設(shè)備和ODBC業(yè)務(wù)數(shù)據(jù)設(shè)備管理窗口之間建立數(shù)據(jù)源連接,右鍵單擊“數(shù)據(jù)庫”子窗口,在彈出菜單中選擇“刷新”。單擊“數(shù)據(jù)庫”根目錄,選擇“對象數(shù)據(jù)庫管理員”菜單,選擇“配置”頁面并展開“驅(qū)動程序”節(jié)點(diǎn)。右鍵單擊ODBC節(jié)點(diǎn),從菜單中彈出選擇新建,并在“驅(qū)動名稱”輸入框中輸入用戶使用的驅(qū)動名稱。例如,訪問數(shù)據(jù)庫選擇驅(qū)動程序微軟訪問驅(qū)動程序(*)。在“ODBC驅(qū)動程序名稱”輸入框中建立ODBC數(shù)據(jù)源時使用的mdb)在“選擇要創(chuàng)建別名的數(shù)據(jù)源”中選擇已建立的數(shù)據(jù)源名稱“我的訪問數(shù)據(jù)庫”,然后單擊“確定”按鈕完成設(shè)置。此時,名為MyA
8、ccessDatabase1的數(shù)據(jù)源名稱顯示在“數(shù)據(jù)庫”子窗口中,這是用于在BDE和ODBC之間建立連接的數(shù)據(jù)源。修改后確認(rèn)。示例:通過使用創(chuàng)建的ODBC數(shù)據(jù)源和Delphi軟件工具數(shù)據(jù)庫桌面創(chuàng)建一個Access數(shù)據(jù)庫表。(1)創(chuàng)建一個表格德爾福工具數(shù)據(jù)庫桌面,然后選擇菜單文件新表格在顯示的窗口。將打開“創(chuàng)建表格”對話框。在此對話框中,選擇“訪問數(shù)據(jù)庫”作為表格類型,然后單擊“確定”按鈕顯示一個名為“創(chuàng)建訪問數(shù)據(jù)庫表格”的對話框。(2)在數(shù)據(jù)庫桌面中創(chuàng)建一個數(shù)據(jù)表,并建立一個包含五個字段的表,字段名稱分別代表“年級”、“專業(yè)”、“學(xué)生人數(shù)”、“姓名”和“年齡”。設(shè)置完字段后,單擊“另存為”按鈕
9、,將出現(xiàn)“將表格另存為”對話框。在此對話框中,首先將別名設(shè)置為我的訪問數(shù)據(jù)庫1。在“文件名”編輯框中輸入表名(不需要擴(kuò)展名)。在這種情況下,它是StudentItem。最后,單擊保存按鈕,新創(chuàng)建的表將保存在指定的數(shù)據(jù)庫中。8.2 BDE組件簡介BDE組件是一組用于開發(fā)數(shù)據(jù)庫應(yīng)用程序的特殊組件。它包含八個組件:表、查詢、存儲過程、數(shù)據(jù)庫會話、批處理、更新SQL、嵌套表,它們在數(shù)據(jù)庫應(yīng)用程序的創(chuàng)建中起著關(guān)鍵作用。目前,BDE組件可以訪問幾乎所有的數(shù)據(jù)庫,表和查詢組件是這些組件中最常用的。下面是一個介紹操作步驟的例子。示例1:使用Table組件顯示和操作數(shù)據(jù)表來創(chuàng)建一個新項(xiàng)目,并在主窗體上放置四個組
10、件:Table、DataSource、DBNavigator和DBGrid,它們的組件名稱分別是Table1、DataSource1、DBNavigator1和DBGrid1。,示例1:使用表組件顯示和操作數(shù)據(jù)表,將表1的數(shù)據(jù)庫名、表名和活動的屬性值分別設(shè)置為DBDEMOS、Customer.db和True。將數(shù)據(jù)源1組件的數(shù)據(jù)集屬性值設(shè)置為表1。將dbgrid1和DBNavigator1組件的數(shù)據(jù)源屬性值設(shè)置為數(shù)據(jù)源1、數(shù)據(jù)源1、DBGrid1、dbnavigator1、Table1、8.3表組件。table組件用于訪問指定數(shù)據(jù)表中的數(shù)據(jù)。它可以表示數(shù)據(jù)表中的所有行和列以及其中的一些。使用t
11、able組件,您可以打開、瀏覽、修改和創(chuàng)建數(shù)據(jù)表。8.3.1期初/期末數(shù)據(jù)表1。打開表的先決條件在使用表組件打開數(shù)據(jù)表之前,您必須設(shè)置它的三個屬性:數(shù)據(jù)庫名、表名和表類型。DatabaseName屬性函數(shù):用于指定數(shù)據(jù)表所在的數(shù)據(jù)庫別名。(1)在設(shè)計階段:如果通過BDE設(shè)置了數(shù)據(jù)庫別名,則可以從該屬性顯示的下拉列表中選擇表所在的數(shù)據(jù)庫別名。(2)語句表1。數(shù)據(jù)庫名:=數(shù)據(jù)庫別名可以在運(yùn)行時:中使用。對于本地數(shù)據(jù)庫,可以直接使用數(shù)據(jù)表文件所在的路徑。表名屬性函數(shù):用于指定要打開的數(shù)據(jù)表名。方法: (1)在設(shè)計階段:中設(shè)置數(shù)據(jù)庫名稱屬性后,您可以在數(shù)據(jù)表組件的對象查看器中使用表名稱屬性選擇要打開的
12、數(shù)據(jù)表。(2)運(yùn)行時:將數(shù)據(jù)表設(shè)置為在運(yùn)行時打開,并使用以下語句:表1。表名3360=數(shù)據(jù)表文件名注意:在用此方法設(shè)置數(shù)據(jù)表名之前,請確保表1已關(guān)閉;否則,請?jiān)陉P(guān)閉后使用上述命令。TableType屬性函數(shù):用于設(shè)置要打開的數(shù)據(jù)表的類型,TableType的屬性值及其對應(yīng)的tableType。通常,默認(rèn)值ttDefault通常用于tabletype屬性。此時,BDE將根據(jù)數(shù)據(jù)表文件的擴(kuò)展名確定類型文件擴(kuò)展名和數(shù)據(jù)表的表類型之間的對應(yīng)關(guān)系。2.打開數(shù)據(jù)表在應(yīng)用程序中,必須先打開該表,然后才能操作該表。打開表的方法:(1)打開數(shù)據(jù)表組件;(2)比較數(shù)據(jù)表組件的活動屬性:兩種方法都可以打開數(shù)據(jù)表。但
13、是,第二種方法更有效,因?yàn)榈谝环N方法最終會將數(shù)據(jù)表的活動屬性值設(shè)置為真。3。關(guān)閉數(shù)據(jù)表。使用后及時關(guān)閉數(shù)據(jù)表。關(guān)閉數(shù)據(jù)表的方法:(1)調(diào)用數(shù)據(jù)表組件的關(guān)閉方法;(2)將數(shù)據(jù)表組件的活動屬性設(shè)置為假,8.3.2瀏覽數(shù)據(jù)表是查詢數(shù)據(jù)表中數(shù)據(jù)的重要手段之一。在Delphi中,瀏覽數(shù)據(jù)表是通過移動記錄指針來實(shí)現(xiàn)的,其中指針可以理解為記錄指示器,用來指示數(shù)據(jù)表中可操作記錄的位置,指針?biāo)赶虻挠涗浲ǔ7Q為當(dāng)前記錄。因?yàn)槟荒懿僮髦羔標(biāo)赶虻挠涗洠阅仨毷紫纫苿佑涗浿羔?,以便修改?shù)據(jù)表中的記錄。為了便于數(shù)據(jù)表的操作,數(shù)據(jù)表(表和查詢)組件提供了一系列用于移動記錄指針的命令。常用的命令如下:數(shù)據(jù)集組件(表
14、和查詢)首先移動記錄指針命令:將記錄指針移動到第一條記錄;最后:將記錄指針移動到最后一條記錄;下一步:將記錄指針向后移動一條記錄;優(yōu)先:將記錄指針向前移動一條記錄;MoveBy (Num):用于從當(dāng)前記錄向前或向后移動Num記錄。當(dāng)Num0時,它向后移動,當(dāng)Num0時,它向前移動。1。判斷記錄指針位置的方法: (1) BOF功能:用于判斷記錄指針是否在第一條記錄上。(2)EOF函數(shù):用于判斷記錄指針是否在最后一條記錄中。例3。使用循環(huán)語句使記錄指針遍歷數(shù)據(jù)表中的每一條記錄。最后。/當(dāng)不在表1中時,將指針移動到最后一條記錄。如果指針不在表的第一條記錄上,繼續(xù)循環(huán)開始/操作當(dāng)前記錄表1。優(yōu)先。/指針上移一條記錄結(jié)束;當(dāng)BOF函數(shù)值為真時;數(shù)據(jù)表剛剛打開;第一個方法剛剛被調(diào)用;未能調(diào)用優(yōu)先方法,這意味著指針之前沒有記錄。當(dāng)電滲流函數(shù)值為真時;打開一個空數(shù)據(jù)表;剛剛調(diào)用了最后一個方法;未能調(diào)用下一個方法,表明指針后面沒有記錄。很明顯,如果數(shù)據(jù)表是空的,BOF和EOF的返回值都是真。2.保存記錄指針的位置保存記錄指針的方法:使用書簽變量使用書簽變量的步驟是:(1)定義書簽變量;格式:var書簽變量名:TBookMarkStr;(2)將指針位置保存到書簽變量;(3)記錄操作完成后,恢復(fù)指針的位置。2.保存記錄指針的位置(2)保存記錄指針的位置;格式:書
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年甘肅省稅務(wù)系統(tǒng)遴選面試真題帶詳解含答案
- 海洋新材料研發(fā)與產(chǎn)業(yè)化
- 海洋無人裝備應(yīng)用前景
- 老爸的課件圖片
- 老年防摔傷護(hù)理課件
- 老年翻身護(hù)理課件
- 海洋經(jīng)濟(jì)人才實(shí)踐鍛煉
- 老年中醫(yī)養(yǎng)生課件
- 婚姻穩(wěn)定期財產(chǎn)保全及共同子女撫養(yǎng)協(xié)議范本
- 菜鳥驛站品牌便利店全面轉(zhuǎn)讓及代理合同
- 信用社2025年風(fēng)險管理工作計劃
- 語料庫語言學(xué)研究范式的起源與發(fā)展
- 藝術(shù)測評服務(wù)合同協(xié)議
- 非盜搶車輛協(xié)議合同協(xié)議
- 中國空調(diào)設(shè)備行業(yè)發(fā)展趨勢與投資戰(zhàn)略研究報告2025-2028版
- 2024年09月江蘇宿遷市泗陽縣農(nóng)村訂單定向醫(yī)學(xué)畢業(yè)生定向招聘30人筆試歷年專業(yè)考點(diǎn)(難、易錯點(diǎn))附帶答案詳解
- 航天器遙操作策略-全面剖析
- 養(yǎng)老院火災(zāi)事故防范重點(diǎn)培訓(xùn)課件
- 基于數(shù)據(jù)的女性健康問題研究及解決方案探討
- T-CCPS 0014-2024 國有企業(yè)合規(guī)管理體系有效性評價原則與實(shí)施指南
- 閩教版(2024)三年級英語下冊全冊大單元整體教學(xué)設(shè)計 教案
評論
0/150
提交評論