




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
數(shù)據(jù)庫應用技術實驗指導書實驗一過程、函數(shù)和類的應用一、實驗目的1.對delphi的集成開發(fā)環(huán)境有初步的結識,了解Delphi7編程風格;2.掌握ObjectPascal的語句;3.在掌握過程和函數(shù)應用的基礎上,通過實踐,掌握過程、函數(shù)的應用;4.通過自定義類的實驗,掌握Delphi類的應用。二、實驗環(huán)境1.硬件:微機2.軟件:DELPHI7.0專業(yè)版三、相關知識1.過程和函數(shù)在程序設計中,某些特定功能的代碼段會反復在程序中出現(xiàn),為了提高程序的代碼效率,也為了使程序的整體結構更加清楚,我們可以使用一些可以完畢特定功能,且由標記符標記的程序段,這些程序段被稱為子程序或函數(shù)。
Delphi提供了兩種機制用于設計子程序,它們分別是過程(procedure)和函數(shù)(function)。Delphi的過程分為標準過程與自定義過程兩種。標準過程是指系統(tǒng)內部為完畢某種系統(tǒng)功能而定義的過程,無須編寫代碼,即可直接使用。用戶自定義過程則由用戶自行編寫代碼以完畢指定的操作。2.類和對象的定義在客觀世界中,每一個事物都可以看作是一個對象(Object),這些對象有自己的屬性。對對象進行抽象,提取出對象通用的屬性就形成了類?!邦悺笔菍δ骋痪哂泄餐匦缘膶嶓w的描述。從這個角度上看,“類”和數(shù)據(jù)類型是同樣的。但是類所不同的是類不僅對實體的屬性進行了描述,并且還對實體所具有的動作(方法)特性進行了定義,從而使得類可以完全描述出一個現(xiàn)實的實體?!皩ο蟆睂ο笫穷惖膶嵗J穷惖木唧w體現(xiàn)。本質上也是一種數(shù)據(jù)結構。類和對象的關系與數(shù)據(jù)類型和變量的關系是一致的。在Delphi編程中對象可以被理解為可視化控件如按鈕、標簽等。對象的特性對象最突出的特性有三個:封裝性,繼承性,多態(tài)性。對象的封裝性對象的封裝特性是把數(shù)據(jù)和操作數(shù)據(jù)的動作都組合在一個結構中,并根據(jù)需要通過不同的保存字段來設立這些數(shù)據(jù)和動作(方法)的可見性。這樣作的目的是就可以隱藏類內部的復雜性,這對于對象的共享是非常有利的。對象的繼承性對象的繼承性也是對象的很重要的特性。繼承性是指對象擁有祖先對象所共有的特性,同時又具有自己的特性。多態(tài)性多態(tài)性是指對象可以接受多個不同類型的參數(shù),然后自動的根據(jù)類型進行解決。電視也同樣,電視可以接受無線信號,有線信號,VCD,DVD信號。電視會根據(jù)不同的信號模式自動選擇解決方式。這個特性也是非常有用的。四、實驗內容1.熟悉Delphi集成開發(fā)環(huán)境中的各個組成部分,涉及主窗口、代碼編輯器、窗體設計器、對象觀測器(ObjectInspector)和工程管理器(ProjectManager),特別是主窗口的菜單欄和快捷工具欄。熟悉單元文獻(*.pas)的結構,涉及unit語句、interface部分、implementation部分、uses子句。2.在一個窗口中包含3個按鈕,當用戶單擊其中一個時,規(guī)定其它個別按鈕不能使用,如下圖:單擊Button1單擊Button2單擊Button3設計環(huán)節(jié)如下:(1)應用程序用戶界面的建立與對象屬性參見上圖,注意三個按鈕Button1,Button2,Button3的Tag屬性分別為:0,1,2。(2)雙擊按鈕Button1,系統(tǒng)自動聲明默認的事件過程:Button1Click,并同時打開代碼編輯窗口。(3)編寫B(tài)utton1的OnClick事件過程代碼:注:sender:可以讓多個組件共享一個事件區(qū)as運算符:用來作類的轉換,它會將左方操作數(shù)的這個變量所屬的類,轉為右方操作數(shù)那種類。(4)在對象觀測器中依次選擇Button2和Button3,并在事件選項卡中選擇事件OnClick,從事件名稱右邊的下拉列表中選擇已建立的事件過程名Button1Click。
(5)單擊標準工具欄中的“Run”按鈕或按<F9>鍵,運營工程。3.計算階乘5!、7!、15!,以及階乘的和5?。?+15!。分析:可以用過程Factorial來計算任意階乘n!,每次調用過程前給nValue一個值,在過程Factorial中將所求結果放入到Total變量中,返回主程序后Fact變量接受Total的值
設計環(huán)節(jié)如下:
應用程序用戶界面的建立與對象屬性達成設立參見上圖,下面給出通用過程以及事件過程代碼:說明:通用過程的代碼部分必須位于4個按鈕的事件代碼之前才干被調用。五、練習題和思考題1.驗證book2p70這個工程,并把其中的if的多分支語句改為case語句。2.自定義一個類,定義類的數(shù)據(jù)成員和方法程序,并編寫代碼實現(xiàn)類的實例化,編寫代碼實現(xiàn)類的封裝、繼承。六、預習規(guī)定1、熟悉和掌握實驗目的。2、復習相關知識七、實驗報告規(guī)定(1)規(guī)定寫出程序的核心代碼。(2)調試程序并進行分析實驗二常用組件的使用一、實驗目的通過實驗,掌握Delphi中幾個常用組件的應用。二、實驗環(huán)境1.硬件:微機2.軟件:DELPHI7.0專業(yè)版三、相關知識Delphi編程,窗體是組件的容器,窗體上的各個組件的設立是編程的重要工作。這次實驗重要練習如何創(chuàng)建菜單欄,工具欄和狀態(tài)欄,以及TLabel,TEdit,TMemo,TListbox,TOpenDialog,TSaveDialog等幾個組件的應用。TLabel我們稱它為標簽組件,它的重要功能是文字標注和說明作用。TLabel組件不能輸入焦點。它重要屬性是Caption,我們可以直接給Caption賦值。TEdit組件重要用于實時顯示用戶輸入的文本。當用戶在其中輸入字符時,將觸發(fā)OnChange事件,表達編輯框當中的內容正在發(fā)生變化。它的Text屬性,鍵盤輸入的內容就輸入到這個屬性中。這是個TString類型的屬性。我們通過讀寫TEdit.text中的內容來完畢我們的任務。假如要建立一個可以顯示和編輯多行文本的文本編輯器,就要用到TMemo(多行文本編輯器)了。TMemo與TEdit的不同之處重要體現(xiàn)在Lines屬性上,它也是Tstrings類型。TStrings是一個抽象類,它并沒有真正實現(xiàn)操縱字符串的代碼,它只是定義了一系列的方法。TStrings的派生組件實現(xiàn)了事實上的字符串操縱方法,使用戶可以操縱屬于組件的字符串列表。這個類型中定義了Add,Delete,Insert等方法,可以完畢加入,刪除,插入某一行數(shù)據(jù)的操作。此外還可以通過loadfromfile(),SaveToFile()實現(xiàn)從文本文獻中讀入數(shù)據(jù),和保存數(shù)據(jù)的功能。TListBox我們稱它為列表框組件。它可以顯示一個項目列表,并且用戶可以從列表中選擇一個或者多個項目。列表框的重要屬性是Items,它也是Tstring類型,所以和TMemo的操作同樣。四、實驗內容1.建立一個列表框之間項目移動的工程,規(guī)定界面如下圖所示,2.設計一個綜合運用菜單的例子,并建立一個文本文獻測試是否能實現(xiàn)應具有的功能。設計環(huán)節(jié)如下:(1)向窗體中添加一個Memo組件,設立Memo的Align屬性為alClient,充滿整個窗體;(2)向工程中添加一個MainMenu組件,在菜單設計器中設立菜單項,設計后如圖所示:(3)向工程中添加OpenDialog組件和SaveDialog組件,設立過濾條件如圖所示:(4)為菜單項設計的代碼如下:五、練習題和思考題1.編寫代碼實現(xiàn)TLabel和TEdit組件的綜合應用2.完善實驗內容2的設計菜單的例子,在這個例子的基礎上,創(chuàng)建一個工具欄,規(guī)定在工具欄上有實現(xiàn)Copy和Paste功能的快捷按鈕,按鈕上還要有圖像(通過TImageList組件實現(xiàn))。六、預習規(guī)定1、熟悉和掌握實驗目的。2、復習相關知識七、實驗報告規(guī)定(1)規(guī)定寫出程序的核心代碼。(2)調試程序并進行分析實驗三數(shù)據(jù)庫應用程序的開發(fā)一、實驗目的1.熟悉數(shù)據(jù)庫設計方法和數(shù)據(jù)庫開發(fā)常用的組件;2.掌握建立數(shù)據(jù)庫應用程序的基本操作,掌握用SQL語言對數(shù)據(jù)庫中的數(shù)據(jù)進行操作;3.掌握開發(fā)小型數(shù)據(jù)庫應用系統(tǒng)的環(huán)節(jié),綜合所學知識。二、實驗環(huán)境1.硬件:微機2.軟件:DELPHI7.0專業(yè)版三、相關知識1.數(shù)據(jù)庫分類數(shù)據(jù)庫根據(jù)結構可以分為文獻型數(shù)據(jù)庫和C/S型數(shù)據(jù)庫。文獻型數(shù)據(jù)庫的特點是數(shù)據(jù)庫由單個或者多個文獻組成,沒有附加的管理程序。比較著名的文獻型數(shù)據(jù)庫由Access、DBF、Paradox等。Access是一個數(shù)據(jù)庫管理系統(tǒng),是Office辦公軟件中一個極為重要的組成部分。微軟之所以把它集成到Office中而不是VisualStudio中,是由于它與其他的數(shù)據(jù)庫管理系統(tǒng)相比更加簡樸易學,并且Access的功能也足夠強大,足以應付一般的數(shù)據(jù)管理及解決需要。本課程重要以Access數(shù)據(jù)庫為主。C/S(Client/Server,客戶/服務器)型數(shù)據(jù)庫是當前數(shù)據(jù)庫應用的主流。與文獻型數(shù)據(jù)庫不同的是,C/S型數(shù)據(jù)庫應用程序有兩個部分組成:服務器和客戶機。服務器指數(shù)據(jù)庫管理系統(tǒng)(DBMS),用于描述、管理和維護數(shù)據(jù)庫的程序系統(tǒng)。客戶機則將用戶的需求送交到服務器,再把數(shù)據(jù)從服務器返回給用戶。C/S型數(shù)據(jù)庫非常適合于網(wǎng)絡應用,可同時被多個用戶所訪問,并賦予不同的用戶不同的安全權限。C/S型數(shù)據(jù)庫支持的數(shù)據(jù)量一般比文獻型數(shù)據(jù)庫大得多,同時,C/S型數(shù)據(jù)庫一般都能完善地支持SQL語言。這些特性決定了C/S型數(shù)據(jù)適合于高端應用。比較著名的C/S型數(shù)據(jù)庫有SQLServer,Oracle以及Delphi自帶的InterBase等。2.Delphi訪問數(shù)據(jù)庫的機制ADO(ActiveXDataObjects)是Microsoft公司提供的數(shù)據(jù)訪問技術,Delphi提供了對ADO技術的完善支持。通過提供的對ADO常用對象的封裝,用戶可以迅速實現(xiàn)數(shù)據(jù)庫應用程序的開發(fā)而不需要使用BDE。與BDE相比,ADO是一種通用的數(shù)據(jù)庫訪問技術,得到了廣泛的支持,其特點是合用范圍廣泛、易于升級和維護。通過連接的數(shù)據(jù)庫應用程序在分發(fā)時一般不需要像BDE同樣,需要在每個客戶機上安裝BDE驅動程序,由于系統(tǒng)中一般都支持ADO連接。數(shù)據(jù)庫組件Delphi的數(shù)據(jù)庫組件重要有數(shù)據(jù)控制(感知)組件、數(shù)據(jù)訪問組件和數(shù)據(jù)連接接受組件。ADO組件和BDE組件就是數(shù)據(jù)連接接受組件。它們和數(shù)據(jù)庫的關系可以用下面的示意圖來表達:用戶←→數(shù)據(jù)控制組件←→數(shù)據(jù)訪問組件←→ADO組件←→數(shù)據(jù)庫ADO組件位于組件欄的ADO選項卡中,一共有7個組件。ADO組件分為三組,一類是數(shù)據(jù)連接組件,比如TADOConnection,它用于和數(shù)據(jù)庫建立連接,獲取數(shù)據(jù)庫層面的一些信息,并向別的組件提供數(shù)據(jù)庫連接;此外一種是數(shù)據(jù)集組件,比如TADOTable,TADOQuery組件,它們都有一個共同的基類(TADODataset)。數(shù)據(jù)集可以理解成是數(shù)據(jù)庫中一張或多張數(shù)據(jù)表,只但是這種表由ADO封裝過以便于程序操作。我們對數(shù)據(jù)庫的操作其實是通過數(shù)據(jù)集為中介來進行的。數(shù)據(jù)訪問組件位于組件欄的DataAccess選項卡中,它用來把非可視化的數(shù)據(jù)集控件與可視的數(shù)據(jù)控制組件連接在了一起,這樣數(shù)據(jù)集中的數(shù)據(jù)就可以在數(shù)據(jù)控制組件中顯示出來,并且通過數(shù)據(jù)控制組件可以編輯、刪除、增長數(shù)據(jù)集中的數(shù)據(jù)。數(shù)據(jù)控制組件也可稱為數(shù)據(jù)感知組件或數(shù)據(jù)顯示組件。它們的重要功能是和數(shù)據(jù)訪問組件配合供用戶對數(shù)據(jù)進行瀏覽、編輯等操作。也就是說應用程序可以通過這些組件瀏覽數(shù)據(jù)集中的數(shù)據(jù)信息,還可以編輯修改數(shù)據(jù)信息并將它們提交給數(shù)據(jù)庫。數(shù)據(jù)控制組件位于DataControls選項卡上。4.最重要的SQL語句SELECTSELECT語句用于從一個表或多個表中根據(jù)條件檢索列和行。INSERTINSERT語句用于向一個表中增長行。UPDATEUPDATE語句用于更新表中已經(jīng)存在的行的一個或者多個字段值。DELETEDELETE語句用于從一個表中刪除行。四、實驗內容1.數(shù)據(jù)庫的建立我們以Access為例建立一個學生基本情況庫。啟動Access出現(xiàn)數(shù)據(jù)庫建立向導,如圖選擇空的數(shù)據(jù)庫,然后為數(shù)據(jù)庫命名為學生資料。這時一個空的數(shù)據(jù)庫便建立起來。規(guī)劃系統(tǒng)中表結構和關系。建立表。Access有幾種方式來進行表的建立。我們以使用設計器的方式來建立表。我們要建立一個學生基本信息的庫,所以一方面要建立一個學生表。一個學生的基本信息設立如下:擊學生表,在表中填入記錄如下,這樣就完畢了一個簡樸的數(shù)據(jù)庫的建立。2.編寫一個數(shù)據(jù)庫應用程序,除了可以完畢正常的排序功能之外,還規(guī)定單擊某列標題時,按照升序方式排序,再次單擊時,按照相反的方式排序。設計環(huán)節(jié)如下:設計應用程序界面如下:(2)設立ADOConnection1,ADOQuery1,DataSource1,DBGrid1的數(shù)據(jù)庫連接為office中自帶的contact.mdb,一般保存在c:\programfiles\Microsoftoffice\office\samples\目錄下。(3)程序完整代碼如下:(4)運營之后,選擇排序字段,選擇排序方式,單擊按鈕,看運營結果(5)兩次單擊某列標題,看運營結果。3.看一個TDBText和TDBEdit組件的應用實例,這個例子可以通過TDBNavigator組件控制數(shù)據(jù)集的記錄指針,并通過TDBText組件和TDBEdit組件顯示數(shù)據(jù)集的數(shù)據(jù),用戶還可以通過TDBEdit組件修改數(shù)據(jù)集中某些字段的值,然后提交更改。我們還可以通過DBImage1組件的快捷菜單來添加照片或刪除照片,照片這里為bmp文獻格式。設計環(huán)節(jié)如下:?(1)設計應用程序界面如下:(2)設立組件的屬性:ADOConnection1連接到數(shù)據(jù)庫實驗1剛剛建立的數(shù)據(jù)庫“學生資料.mdb”上;ADOQuery1的屬性:Connection:ADOConnection1SQL:select*from學生Active:TrueDBNavigator1的屬性:DataSource:DataSource1DBText1的屬性:DataSource:DataSource1DataField:NameDBEdit1的屬性設立與DBText1類似,OpenDialog1和SaveDialog1的Filter屬性:FilterName為BMP圖片,F(xiàn)ilter為*.bmpPopupMenu設立為如圖所示:至于其他的一些屬性設立這里就不贅述了。(3)整個程序的代碼如下:unitUnit1;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,DB,ADODB,StdCtrls,Mask,DBCtrls,ExtCtrls,Menus;typeTForm1=class(TForm)Label1:TLabel;Label2:TLabel;Label3:TLabel;Label4:TLabel;Label5:TLabel;Label6:TLabel;DBText1:TDBText;DBEdit1:TDBEdit;DBEdit2:TDBEdit;DBEdit3:TDBEdit;DBEdit4:TDBEdit;DBEdit5:TDBEdit;ADOConnection1:TADOConnection;ADOQuery1:TADOQuery;DataSource1:TDataSource;DBNavigator1:TDBNavigator;OpenDialog1:TOpenDialog;SaveDialog1:TSaveDialog;PopupMenu1:TPopupMenu;MenuLoad:TMenuItem;MenuDelete:TMenuItem;MenuSeperat(yī)or:TMenuItem;MenuCopy:TMenuItem;MenuPaste:TMenuItem;MenuCut:TMenuItem;MenuSaveAs:TMenuItem;DBImage1:TDBImage;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年達州市農科院招聘考試筆試試題(含答案)
- 2025年醫(yī)學裝備相關知識培訓考核題(含答案)
- 2024年民航安全隱患排查治理長效機制建設大比武指南試題及答案
- (2025)全國水利安全生產(chǎn)知識競賽題庫及參考答案
- 2025義務教育藝術課程標準新課標考試真題庫及答案
- 2025年內蒙古自治區(qū)巴彥淖爾市社會工作者職業(yè)資格社會工作實務(初級)預測試題含答案
- 2024年職業(yè)技能:烘焙技術知識考試題庫與答案
- (2025年)江西省吉安市會計從業(yè)資格會計基礎預測試題含答案
- 兒科消化系統(tǒng)知識測試練習題(附答案)
- 標準化安全培訓課件
- 封閉式循環(huán)水工廠化養(yǎng)殖項目可行性研究報告模板
- T-HAS 141-2024 合成超硬材料用葉蠟石
- DB33-T 1354.2-2024 產(chǎn)業(yè)數(shù)據(jù)倉 第2部分:數(shù)據(jù)資源編目規(guī)范
- 勞務外包服務投標方案(技術標)
- CNAS-CL36-2012 醫(yī)學實驗室質量和能力認可準則在基因擴增檢驗領域的應用說明
- JJG 184-2024 液化氣體鐵路罐車容積檢定規(guī)程
- 股權轉讓股東會決議范本
- 合作社和公司合作協(xié)議書(2篇)
- 高一政治必修1、必修2基礎知識必背資料
- 醫(yī)藥代表大客戶管理經(jīng)驗分享
- 教師安全教育培訓內容
評論
0/150
提交評論