版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、1,第10章 數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā),2,本 章 要 點,10.1數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)過程 10.2調(diào)試技術(shù) 10.3容錯技術(shù) 10.4應(yīng)用程序發(fā)布,3,10.1 數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)過程,10.1.1數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)步驟 1可行性分析 2需求分析 3數(shù)據(jù)設(shè)計 4應(yīng)用程序設(shè)計 5測試 6維護(hù),4,10.1.2 構(gòu)造應(yīng)用程序框架 (1)設(shè)置應(yīng)用程序起始點 在項目管理器中設(shè)置主文件的方法為:單擊要設(shè)置為主文件的程序或表單或菜單文件,從【項目】菜單或快捷菜單中選擇【設(shè)置主文件】選項。 (2)初始化環(huán)境 (3)顯示初始的用界面 (4)控制事件循環(huán) (5)恢復(fù)初始的開發(fā)環(huán)境 (6)組織主程序文件,5,【例1
2、0-2】為本書中的學(xué)生成績管理系統(tǒng)設(shè)計一個主程序(MAIN.PRG),并設(shè)置為主文件,【例10-2】為本書中的學(xué)生成績管理系統(tǒng)設(shè)計一個主程序(MAIN.PRG),并設(shè)置為主文件。 MAIN.PRG代碼如下: DO start.PRG & 調(diào)用程序建立環(huán)境設(shè)置(在公 有變量中保存值) DO form MAINFORM & 將例9-3設(shè)計的帶菜單的頂層表單作為初始的用戶界面顯示 READ EVENTS & 建立事件循環(huán)。 DO CLEANUP.PRG & 在退出之前,恢復(fù)環(huán)境設(shè)置 Start.PRG中代碼如下: Public cTalkVal & 定義全局變量,6,IF SET (TALK)=”O(jiān)
3、N” SET TALK OFF cTalkVal=“ON” & 保存SET TALK設(shè)置 ELSE cTalkVal=“ON” Endif Open database student & 打開數(shù)據(jù)庫 Application.visible=.F. & 隱藏Visual FoxPro主窗口 CLEANUP.PRG中代碼如下: set talk &ctalkval & 恢復(fù)SET TALK設(shè)置 close database & 關(guān)閉數(shù)據(jù)庫 clear all windods & 釋放所有窗口 Application.visible=.T. & 顯示Visual FoxPro主窗口,7,10.1.3
4、 使用項目管理器組織與管理文件 1創(chuàng)建一個項目 (1)在系統(tǒng)菜單中單擊【文件】|【新建】,此時系統(tǒng)將彈出新建對話框。 (2)在“新建”對話框的“文件類型”中選擇“項目”,單擊“新建文件”按鈕。 (3)在彈出的“創(chuàng)建”對話框中輸入項目的名稱,并選擇保存項目的目錄后單擊“保存”按鈕。這時就新建成了一個項目并打開了項目管理器。在項目管理器中創(chuàng)建各類文件的方法在前面各章節(jié)中均有介紹,在此不再細(xì)述,本節(jié)僅介紹項目管理器的文件管理功能。,8,2添加和移去文件 從項目中選定要移去的文件或?qū)ο蟆?單擊“移去”按鈕;系統(tǒng)將彈出如圖所示對話框。 如果單擊“移去”按鈕,將從項目中移去該文件或?qū)ο?;如果單擊“刪除”按
5、鈕,將從項目中移去該文件或?qū)ο?,并將文件從磁盤上永久性地刪除。,9,3創(chuàng)建及修改文件 (1)選定要創(chuàng)建的文件類型。 (2)單擊“新建”按鈕或“修改”按鈕,即可激活Visual FoxPro 相應(yīng)的設(shè)計器或向?qū)А@?,要修改一個表,只需選定該表的名稱,用通過鼠標(biāo)指針雙擊或單擊“修改”按鈕,即可進(jìn)入“表設(shè)計器”顯示該表結(jié)構(gòu)。,10,4為文件添加說明 通過設(shè)置出現(xiàn)在項目管理器中的文件說明信息,可更方便地跟蹤文件。其方法是: (1)在項目管理器中選定所需的文件。 (2)選擇“項目”菜單中的“編輯說明”命令。 (3)在彈出的“說明”對話框中鍵入該文件的說明信息。 (4)單擊“確定”按鈕。,11,5設(shè)置文
6、件的包含或排除屬性 6編輯或查看項目信息 在系統(tǒng)菜單中選擇【項目】|【項目信息】命令,打開如圖所示對話框。,編輯項目信息:在項目信息對話框中,單擊項目選項卡,可以查看或編輯作者有關(guān)信息,單擊文件選項卡,可以一次性查看所有的項目文件,12,10.1.4 項目連編,1測試項目 在項目管理器中,單擊“連編”按鈕。系統(tǒng)將彈出如圖所示的連編選項對話框。,在“連編選項”對話框中,選擇“重新連編項目”,13,3連編一個應(yīng)用程序 若要連編一個應(yīng)用程序,可使用BUILD APP或BUILD EXE命令。或者進(jìn)行如下操作。 (1)在項目管理器中,單擊“連編”按鈕。 (2)在“連編選項”對話框中,選擇“連編應(yīng)用程序
7、”,生成.app文件;或者選擇“連編可執(zhí)行文件”以建立一個.exe文件。 (3)選擇所需其他選項并單擊“確定”按鈕。 當(dāng)為項目建立一個最終的應(yīng)用程序文件之后,就可運行了,14,4運行.app應(yīng)用程序 要運行.app應(yīng)用程序,可從“程序”菜單中選擇“運行”命令,然后選擇要執(zhí)行的應(yīng)用程序;或者在“命令”窗口中,鍵入DO和應(yīng)用程序文件名。 例如,要運行應(yīng)用程序“項目1”,可鍵入: DO 項目1.app 5運行.exe文件 如果從應(yīng)用程序中建立一個.exe文件,可以使用如幾種方法運行該文件: (1)從Visual FoxPro中,從“程序”菜單中選擇“運行”,然后選擇一個應(yīng)用程序文件; (2)在Win
8、dows中,雙擊該.exe文件的圖標(biāo),15,10.2 調(diào)試技術(shù),10.2.1 建立測試環(huán)境 1硬件和軟件問題 為了獲得最大的可移植性,應(yīng)當(dāng)在預(yù)期運行的最底層平臺上開發(fā)應(yīng)用程序。要保證應(yīng)用程序能在滿足最低要求的平臺上正常工作,應(yīng)該做到以下幾點: (1)使用最低層常用的視頻方式開發(fā)應(yīng)用程序。 (2)確定最低所需的以及存儲介質(zhì)的空間大小,其中應(yīng)包括必需的驅(qū)動程序以及同時運行的軟件所占用的空間。 (3)對于應(yīng)用程序的網(wǎng)絡(luò)版,還應(yīng)考慮內(nèi)存、文件和記錄鎖定特殊要求。,16,2系統(tǒng)路徑和文件屬性 為了在運行應(yīng)用程序的每臺機器上都能夠快速訪問所有必需程序文件,可能需要確定一個基本文件配置。在定義基本配置時,應(yīng)
9、考慮下列問題: (1)應(yīng)用程序是否需要公用系統(tǒng)路徑。 (2)設(shè)置的文件存取屬性是否合適。 (3)為每個用戶設(shè)置的網(wǎng)絡(luò)權(quán)限是否正確,17,3目錄結(jié)構(gòu)和文件位置 如果源代碼引用的是絕對路徑或文件名,那么當(dāng)應(yīng)用程序安裝到任何其他機器上時必須存在相同的路徑和文件。若要避免這一情況,可采用以下方法: (1)使用Visual FoxPro配置文件。 (2)另建一個目錄或目錄結(jié)構(gòu),將源文件和生成的應(yīng)用程序文件分開。這樣就可以對應(yīng)用程序的相互引用關(guān)系進(jìn)行測試,并且準(zhǔn)確地知道在發(fā)布應(yīng)用程序時應(yīng)包含哪些文件。 (3)使用相對路徑。,18,10.2.2 設(shè)置驗證的內(nèi)容 在代碼中可以包含驗證的內(nèi)容,其作用是驗證代碼運
10、行環(huán)境的假設(shè)情況。 若要設(shè)置驗證的內(nèi)容,使用ASSERT命令標(biāo)明程序中的假設(shè)。 當(dāng)ASSERT命令中所規(guī)定的條件為“假”(.F.)時,將顯示一個提示信息對話框,同時在“調(diào)試輸出”窗口中反映出來。 例如,可以編寫一個函數(shù),函數(shù)需要一個非的參數(shù)值。如果參數(shù)為時,下面的函數(shù)代碼將提醒用戶: ASSERT nParm!=0 MESSAGE“接受的參數(shù)數(shù)值為0”。 可以使用SET ASSERTS命令指定是否顯示提示信息,默認(rèn)情況下,不顯示提示信息。,19,10.2.3 在調(diào)試器中調(diào)試程序 1打開調(diào)試器 選擇【工具】|【調(diào)試器】命令?!罢{(diào)試器”窗口是一個獨立運行的窗口,它有自己的菜單和工具欄,在“調(diào)試器”
11、窗口中可有選擇地打開5個子窗口:跟蹤、監(jiān)視、局部、調(diào)用堆棧和調(diào)試輸出。如圖所示,20,2跟蹤代碼 在調(diào)試中,最有用的方法就是跟蹤代碼,以此觀察每一行代碼的運行,同時檢查所有的變量、屬性和環(huán)境設(shè)置值,如圖所示,1、如果“跟蹤”窗口沒有打開,在調(diào)試窗口的菜單欄中選擇【窗口】|【跟蹤】命令,2、在調(diào)試窗口的菜單欄中選擇【調(diào)試】|【運行】命令。打開要調(diào)試的程序,3、在調(diào)試窗口的菜單欄中選擇【調(diào)試】|【單步】命令(或F6鍵),或選擇【調(diào)試】|【單步跟蹤】命令(F8鍵),21,3設(shè)置斷點 (1)在特定代碼行設(shè)置斷點 在“跟蹤”窗口中,找到需要設(shè)置斷點的那一行,并將光標(biāo)放置在該代碼行上 按下F9鍵或者單擊“
12、調(diào)試器”工具欄上的“切換斷點”按扭。 或者雙擊該行代碼行左邊的灰色區(qū)域,該代碼行左邊的灰色區(qū)域中會顯示一個實心點,這表明在該行已經(jīng)設(shè)置一個斷點。 如果正在調(diào)試對象,那么,通過從對象列表中選擇對象,從過程列表中選擇所需方法程序或事件,就可以在“跟蹤”窗口中找到特定的代碼行,22,(2)在文件指定位置設(shè)置斷點 在調(diào)試窗口中選擇【工具】|【斷點】命令,打開“斷點”對話框,1、在“類型”列表框中選擇“在定位處中斷”,2、在“定位”和“文件”輸入框中指定所需斷點的位置和文件來設(shè)置斷點,23,4移去斷點 在“斷點”對話框中,單擊斷點列表框中某斷點左側(cè)的復(fù)選框可使該斷點無效,單擊“刪除”按鈕可刪除選定的斷點
13、。 在“跟蹤”窗口中,雙擊斷點標(biāo)記可以刪除該斷點。,24,5查看存儲元素的值 (1)在“局部”窗口中查看變量的值 “局部”窗口會顯示調(diào)用堆棧上的任意程序、過程或方法程序里所有的變量、數(shù)組、對象和對象元素,如圖所示。默認(rèn)情況下,在“局部”窗口中所顯示的是當(dāng)前執(zhí)行程序中的變量值,通過在“位置”列表中選擇程序或過程,也可以查看其他程序或過程中的變量值,25,(2)在“監(jiān)視”窗口中查看變量的值 在“監(jiān)視”窗口的“監(jiān)視”框中,鍵入任意一個有效的Visual FoxPro表達(dá)式,然后按下回車鍵。這時,該表達(dá)式的值和類型就會出現(xiàn)在“監(jiān)視”窗口的列表中。如圖所示,若要從“監(jiān)視”窗口中移去某監(jiān)視項,選擇該項,然
14、后按DEL鍵;或者從快捷菜單中,選擇“刪除監(jiān)視”,26,(3)在“跟蹤”窗口中查看變量值 在“跟蹤”窗口中,將光標(biāo)定位到任何一個變量、數(shù)組或?qū)傩陨希蜁霈F(xiàn)提示條,并顯示它的當(dāng)前值,27,6查看事件發(fā)生的序列 若要跟蹤事件,可按如下操作: 在調(diào)試窗口的菜單中選擇【工具】|【事件跟蹤】命令。打開如圖所示的跟蹤對話框。, 選擇要跟蹤的事件:系統(tǒng)默認(rèn)的跟蹤事件為Visual FoxPro系統(tǒng)定義的所有事件,用戶可從“跟蹤事件”列表中選擇不跟蹤的事件,并單擊中部的左箭頭按鈕將其加入“可用事件”列表中, 啟動事件跟蹤:選中“開啟事件跟蹤”復(fù)選框,便可激活事件跟蹤, 選擇跟蹤輸出去向,28,10.3 容錯
15、技術(shù),10.3.1 處理運行時刻錯誤 “運行時刻錯誤”是指在應(yīng)用程序開始執(zhí)行后由于環(huán)境的變化而引發(fā)的錯誤,處理“運行時刻錯誤”有效的函數(shù)和命令,29,10.3.2 防止運行時刻錯誤的發(fā)生 要防止“運行時刻錯誤”的發(fā)生,首先需要預(yù)見錯誤可能會在何處發(fā)生,然后針對可能發(fā)生錯誤的代碼進(jìn)行修改 【例10-3】運行時打開STUD表,如果表不存在,顯示出錯信息。 不能容錯的代碼: USE STUD 能容錯的代碼: IF FILE(stud) USE stud Else MESSAGEBOX(打開表錯誤,0,提示) ENDIF,30,10.3.3 處理運行時錯誤 有時不能預(yù)見所有可能發(fā)生的錯誤,也許不想這樣
16、做。這時,我們就需要利用Visual FoxPro提供的錯誤捕獲功能: ON ERROR DO ,一般情況下,可將有可能出現(xiàn)運行時錯誤的代碼放在ON ERROR DO 和ON ERROR之間,要中止ON ERROR DO 錯誤捕獲功能,可執(zhí)行不帶任何參數(shù)的ON ERROR命令,將錯誤信息重置為Visual FoxPro的內(nèi)置錯誤信息,如果在代碼中用ON ERROR DO 命令啟動了Visual FoxPro的錯誤捕獲功能,在后續(xù)代碼中發(fā)生任何運行時錯誤,系統(tǒng)都會執(zhí)行中的代碼,然后跳過錯誤代碼行,接著執(zhí)行錯誤代碼行的下一語句。如果希望重新執(zhí)行錯誤行代碼,可使用RETRY命令,31,【例10-4】
17、假若系別表(DEP)的代號字段被定義為主關(guān)鍵字,如果用SQL語句向系別表(DEP)插入一條新記錄,可用命令: DEPNO=02 INSERT INTO DEP VALUES(&DEPNO,中文系) 如果DEP表中已有代號為“02”的記錄,這條命令在運行時就會發(fā)生錯誤。 為了處理這類錯誤,可將代碼修改為: DEPNO=02 ON ERROR DO ERRORPROC INSERT INTO DEP VALUES(&DEPNO,中文系) ON ERROR,32,ERRORPROC.PRG nAnswer=MESSAGEBOX(關(guān)鍵字沖突,插入記錄失敗,2+48+512,”錯誤”) DO CASE
18、CASE nAnswer=3& 退出 CANCEL CASE nAnswer=4 & 重試 *修改DEPNO RETRY OTHERWISE & 忽略 RETURN ENDCASE,33,10.3.4 處理類和對象中的錯誤 當(dāng)方法程序代碼中出錯時,Visual FoxPro將檢查和該對象的rror事件相關(guān)的錯誤處理代碼。如果在該對象的Error事件上沒有代碼,則將從父類或高于該類的其他類中執(zhí)行Error事件的代碼。如果在該類的層次結(jié)構(gòu)中,找不到Error事件代碼,isaul FoxPro將檢查ON ERROR 例程。如果ON ERROR例程不存在,Visual FoxPro則顯示默認(rèn)的錯誤信息,34,10.4 應(yīng)用程序發(fā)布,10.4.1 制作發(fā)布盤前的準(zhǔn)備工作 1創(chuàng)建發(fā)布盤的步驟 創(chuàng)建發(fā)布目錄。 把應(yīng)用程序文件從項目中復(fù)制到發(fā)布目錄的適當(dāng)位置。 創(chuàng)建發(fā)布盤,35,2創(chuàng)建發(fā)布目錄 發(fā)布目錄用來存放構(gòu)成應(yīng)用程序的所有項目文件的副本。發(fā)布目錄樹的結(jié)構(gòu)也就是由“安裝向?qū)А眲?chuàng)建的安裝程序?qū)⒃谟脩魴C器上創(chuàng)建的文件結(jié)構(gòu)。如圖所示,若要創(chuàng)建發(fā)布目錄可按如下步驟進(jìn)行: 創(chuàng)建目錄,目錄名為希望在用戶機器上出現(xiàn)的名稱。 把發(fā)布目錄分成適合于應(yīng)用程序的子目錄。 把應(yīng)用程序項目中的文件復(fù)制到相應(yīng)目錄中。應(yīng)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 整形醫(yī)院客戶咨詢流程及話術(shù)示范
- 神經(jīng)外科常見護(hù)理
- 中醫(yī)骨傷診斷
- 外陰血腫冷敷的護(hù)理
- 餐飲連鎖品牌推廣策劃書范文
- 商管公司崗位職責(zé)與績效考核
- 資源節(jié)約型建筑施工工藝標(biāo)準(zhǔn)
- 運維服務(wù)規(guī)范與操作流程手冊
- 電力工人勞動合同及安全操作指導(dǎo)
- 小學(xué)科學(xué)實驗教學(xué)方案及注意事項匯編
- DB3205-T 1123-2024 職業(yè)教育集團(tuán)建設(shè)與運行規(guī)范
- 2025年鐵路職業(yè)技能競賽線路工理論考試試題庫答案
- 鋼結(jié)構(gòu)加固施工方案及施工工藝流程方案
- 廣東省東華高級中學(xué)2026屆高一化學(xué)第一學(xué)期期末統(tǒng)考試題含解析
- 2025至2030中國全麥面粉行業(yè)項目調(diào)研及市場前景預(yù)測評估報告
- 2025年國家開放大學(xué)(電大)《護(hù)理倫理學(xué)》期末考試復(fù)習(xí)題庫及答案解析
- 煤礦絞車證考試題庫及答案
- 中國水性丙烯酸壓敏膠項目商業(yè)計劃書
- 液流電池制造項目可行性研究報告
- 組織文化與員工滿意度
- 2025年大學(xué)消防指揮專業(yè)題庫- 火場搜救與人員救援
評論
0/150
提交評論