[林學(xué)]森林經(jīng)理學(xué)實(shí)驗(yàn)報(bào)告2011D_第1頁
[林學(xué)]森林經(jīng)理學(xué)實(shí)驗(yàn)報(bào)告2011D_第2頁
[林學(xué)]森林經(jīng)理學(xué)實(shí)驗(yàn)報(bào)告2011D_第3頁
[林學(xué)]森林經(jīng)理學(xué)實(shí)驗(yàn)報(bào)告2011D_第4頁
[林學(xué)]森林經(jīng)理學(xué)實(shí)驗(yàn)報(bào)告2011D_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、.56森林資源二類調(diào)查數(shù)據(jù)庫系統(tǒng)分析設(shè)計(jì)說明書森林資源二類調(diào)查數(shù)據(jù)庫系統(tǒng)分析設(shè)計(jì)說明書目錄1系統(tǒng)概述21.1背景21.2目標(biāo)21.3環(huán)境22.系統(tǒng)分析與設(shè)計(jì)32.1 系統(tǒng)功能需求32.2 系統(tǒng)總體設(shè)計(jì)42.2.1 功能結(jié)構(gòu)42.2.2 數(shù)據(jù)描述103. 系統(tǒng)實(shí)現(xiàn)123.1 開發(fā)工具123.2 數(shù)據(jù)庫的建立123.2.1建立并連接SqlServer或ODBC數(shù)據(jù)源133.2.2向數(shù)據(jù)庫導(dǎo)入Excel數(shù)據(jù)163.3 Powerbuilder連接數(shù)據(jù)庫193.4 用戶登錄模塊實(shí)現(xiàn)263.5. 主界面與菜單實(shí)現(xiàn)273.6. 修改模塊實(shí)現(xiàn)323.7. 錄入模塊實(shí)現(xiàn)433.8. 查詢模塊實(shí)現(xiàn)483.9.

2、統(tǒng)計(jì)輸出模塊實(shí)現(xiàn)49森林資源二類調(diào)查數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)說明書1系統(tǒng)概述1.1背景森林資源信息是指反映林木生長狀況、生長環(huán)境及其生長緊密相關(guān)的營林技術(shù)措施、方針政策等信息。森林具有生長、消亡和再生長的能力,隨著森林的自然生長、枯損和人為生產(chǎn)活動(dòng)的開展,森林資源時(shí)刻都在變化著;再加上森林資源分布廣,生長周期長、信息量大等特點(diǎn),使得傳統(tǒng)的森林資源信息管理難度很大,效率也十分低下,難以滿足現(xiàn)代林業(yè)發(fā)展的需要。利用現(xiàn)代信息管理技術(shù)則可以很好地解決這些問題。森林資源二類調(diào)查的任務(wù)是了解森林資源的狀況,而其目的是:掌握森林資源的動(dòng)態(tài)變化規(guī)律,為制定下一階段林業(yè)發(fā)展規(guī)劃,編制森林采伐限額,建立和完善地方森林資源監(jiān)

3、測體系,考核“造林綠化”和保護(hù)森林資源目標(biāo)完成結(jié)果等提供科學(xué)依據(jù)。1.2目標(biāo)根據(jù)森林資源保護(hù)與利用需要,利用關(guān)系數(shù)據(jù)模型,可視化技術(shù), 面向?qū)ο蟮姆椒ㄒ?GIS 技術(shù),對(duì)系統(tǒng)進(jìn)行了數(shù)據(jù)設(shè)計(jì)及功能設(shè)計(jì),建立系統(tǒng)框架,完成了結(jié)構(gòu)設(shè)計(jì)。并選擇二類調(diào)查數(shù)據(jù)進(jìn)行了系統(tǒng)的實(shí)際建立工作,最終Powerbuilder 程序設(shè)計(jì)語言和qlServer2008完成了計(jì)算機(jī)森林資源管理地理信息系統(tǒng)的界面設(shè)計(jì)和程序設(shè)計(jì),實(shí)現(xiàn)系統(tǒng)主要的空間信息管理和屬性信息管理功能。1.3環(huán)境硬件環(huán)境:多媒體計(jì)算機(jī) Intel Pentium 4 或 100%的兼容處理器(CPU) 1GB 以上的內(nèi)存(RAM) 320GB 以上的硬盤

4、可用空間 256 色或更高的顯示適配器及兼容監(jiān)視器 DVD-RW 驅(qū)動(dòng)器 Microsoft Windows 7 與Microsoft Video for Windows 或 Apple QuickTime 兼容的視頻采集卡(可選)軟件環(huán)境:Windows7、PowerBuilder 12.1,SqlServer2008 R2素材資料:實(shí)驗(yàn)指導(dǎo)書、圖書館書籍、網(wǎng)絡(luò)搜索2.系統(tǒng)分析與設(shè)計(jì)2.1 系統(tǒng)功能需求1、數(shù)據(jù)的采集和輸入:把分散在各處的數(shù)據(jù)進(jìn)行收集并將整理好的數(shù)據(jù)通過一定的設(shè)備輸入到信息系統(tǒng)中。這一步工作的質(zhì)量是整個(gè)信息系統(tǒng)是否正確發(fā)揮作用的關(guān)鍵。2、數(shù)據(jù)的存儲(chǔ):管理中的大量數(shù)據(jù)處理通過共

5、享并且需要多次使用。這就要求將大量的數(shù)據(jù)存儲(chǔ)起來,通常這些數(shù)據(jù)被保存在外部存儲(chǔ)介質(zhì)中,以便需要隨時(shí)進(jìn)行存取和更新。3、數(shù)據(jù)的加工處理:數(shù)據(jù)的加工處理是信息系統(tǒng)的一項(xiàng)重要功能。進(jìn)入信息系統(tǒng)的數(shù)據(jù),都需要經(jīng)過加工處理,才能產(chǎn)生有用的信息。4、數(shù)據(jù)傳輸:為了把數(shù)據(jù)或信息從一個(gè)子系統(tǒng)傳送到另一個(gè)子系統(tǒng),或者在信息系統(tǒng)內(nèi)部進(jìn)行數(shù)據(jù)的處理都涉及數(shù)據(jù)的傳輸問題。5、數(shù)據(jù)傳輸:包括計(jì)算機(jī)系統(tǒng)內(nèi)和系統(tǒng)外的傳輸,計(jì)算機(jī)傳輸即以計(jì)算機(jī)為中心,通過通信線路與其它近、遠(yuǎn)程終端連接、形成聯(lián)機(jī)系統(tǒng)或通過通信線路將微小型等計(jì)算機(jī)聯(lián)網(wǎng)。除計(jì)算機(jī)傳輸外還有人工和盤片傳輸。人工傳輸是 以各種單據(jù)、報(bào)表、計(jì)劃等文字形式傳輸。盤片傳輸

6、是將要傳輸?shù)臄?shù)據(jù)錄入到磁盤或其它外存進(jìn)行傳輸。數(shù)據(jù)的傳輸速度和準(zhǔn)確程度是數(shù)據(jù)傳輸?shù)闹饕阅苤笜?biāo)。6、信息輸出:信息系統(tǒng)輸出功能的完善與否,輸出與格式直觀方便與否,直接關(guān)系到信息的使用效果和信息系統(tǒng)效能發(fā)揮。因而對(duì)系統(tǒng)輸出的信息,又盡量使其易讀易懂,符合信息使用者的習(xí)慣和要求。7、 信息維護(hù):信息的維護(hù)就是保護(hù)信息處于適用狀態(tài)。2.2 系統(tǒng)總體設(shè)計(jì)2.2.1 功能結(jié)構(gòu)(1)模塊劃分本系統(tǒng)有以下功能模塊:1) 用戶登錄 模塊 2) 主界面 模塊 3) 數(shù)據(jù)插入 模塊 4) 數(shù)據(jù)檢索修改 模塊 5) 數(shù)據(jù)查詢 模塊6) 數(shù)據(jù)統(tǒng)計(jì)導(dǎo)出 模塊 7)幫助模塊(2)模塊功能描述1)用戶登錄:用戶只需要在用戶

7、名密碼中輸入自己相應(yīng)的帳號(hào)密碼按登錄按鈕既可登錄系統(tǒng),彈出主界面,若用戶名密碼錯(cuò)誤,則會(huì)提示登錄錯(cuò)誤。單擊取消按鈕可以退出程序。2)主界面菜單功能在主界面用戶將鼠標(biāo)移到菜單上的項(xiàng),會(huì)彈出該項(xiàng)的子項(xiàng),單擊一項(xiàng),便可以彈出相應(yīng)窗口執(zhí)行相應(yīng)操作。,就如單擊打印輸出按鈕,就彈出“森林資源二類調(diào)查系統(tǒng)打印輸出”界面。3)數(shù)據(jù)錄入功能用戶可以自己輸入東南縣2011表中的所有字段,也可以填寫部分。關(guān)鍵字為必填,應(yīng)為是該表的主鍵。其它的字段也有約束,程序已經(jīng)實(shí)現(xiàn)表單驗(yàn)證功能,一旦用戶輸入不符合預(yù)定的要求,系統(tǒng)將向用戶發(fā)出警告,并把光標(biāo)跳轉(zhuǎn)到錯(cuò)誤行,提示用戶再修改。然后,用戶可以單擊添加按鈕將該表單中的臨時(shí)輸入

8、內(nèi)容寫入Datawindow,然后單擊確認(rèn)按鈕便提交到數(shù)據(jù)庫,完成數(shù)據(jù)的插入。如果還想再看下剛剛填寫的數(shù)據(jù)是否真正插入到了數(shù)據(jù)庫,可以單擊檢索按鈕,程序便會(huì)向數(shù)據(jù)庫中讀取剛剛插入的數(shù)據(jù),以便用戶核對(duì)。要是用戶覺得插入錯(cuò)誤,想刪除剛剛插入的數(shù)據(jù),只要單擊刪除按鈕既可。4)數(shù)據(jù)檢索與修改功能在檢索數(shù)據(jù)頁面,單擊檢索按鈕,便可以顯示數(shù)據(jù)庫中“東南縣2001”表的所有行,關(guān)鍵字設(shè)定為不可修改,應(yīng)為它作為主鍵,根據(jù)它才可以實(shí)現(xiàn)其它字段的修改。當(dāng)用戶選擇關(guān)鍵字右邊的任何一行所對(duì)應(yīng)的列時(shí),光標(biāo)都會(huì)變?yōu)榭删庉嫚顟B(tài)。用戶可以根據(jù)需要修改其中的數(shù)值。(各數(shù)值代表的意義可以參考森林資源代碼 如:林種:用材林210,

9、經(jīng)濟(jì)林230,薪炭林220,防護(hù)林120,(商品林)特種用途林110, 110有林地120疏林 130灌木林地140無立木林地150苗圃地210喬內(nèi)荒地220喬外荒地等等)修改完的數(shù)據(jù)只是存儲(chǔ)在Datawindow中,所以必須單擊提交按鈕完成修改。5)查詢功能上圖所示的查詢結(jié)果是由如圖提示框中的語句產(chǎn)生的,用戶在查詢條件欄中需要通過下拉框需要查詢的列,查詢操作符,再在后面的文本框中輸入一個(gè)值,程序便會(huì)自動(dòng)合成一個(gè)查詢表達(dá)式,并通過這個(gè)查詢表達(dá)式從數(shù)據(jù)庫中檢索那一部分?jǐn)?shù)據(jù)顯示在DataWindow中。6)統(tǒng)計(jì)輸出功能打開此模塊,左側(cè)將會(huì)有七張導(dǎo)出表供選擇,用戶可以選擇其中一條,點(diǎn)擊插入數(shù)據(jù),下面

10、的文本條中顯示查詢語句,并會(huì)以MessageBox提示數(shù)據(jù)庫中插入表和錄入數(shù)據(jù)的成功與否。如果提示成功,用戶可以點(diǎn)擊轉(zhuǎn)換輸出按鈕,數(shù)據(jù)庫中相應(yīng)表的數(shù)據(jù)會(huì)以文本文件形式導(dǎo)出,并以DataWindow形式在右側(cè)顯示,以方便用戶查閱。用戶可以任選一張表,重復(fù)上述操作。2.2.2 數(shù)據(jù)描述(1)數(shù)據(jù)庫表結(jié)構(gòu)建立打開PowerDesigner單擊菜單Sybase->新建模型->concept model(概念模型)在右側(cè)欄點(diǎn)選Entity ,新建兩個(gè)表,并雙擊打開,code最好用英文,m強(qiáng)制輸入,p主碼其中一張表是小班表,另一張是林種表。建立它們的字段如下圖所示。點(diǎn)選右側(cè)工具欄的Releat

11、ionship 從樹種表到小班表拖出一條直線。轉(zhuǎn)換數(shù)據(jù)庫:Tools >physical datamodel.在dbms里選擇sql 2000數(shù)據(jù)庫->updatamode from database選擇 selecion里的datasource (2)基本查詢語句Select sum(面積) from 小班 where 地類=純林 and 權(quán)屬=國有 and 森林類別=公益林Select 權(quán)屬,森林類別,sum(面積) from 小班 where 地類=純林group by 權(quán)屬,森林類別(3)數(shù)據(jù)分類:森林類別:生態(tài)公益林,商品林林地所有權(quán):國有,集體,人工林地所有權(quán),林木所有

12、權(quán),起源,林種,優(yōu)勢樹木,地類,森林類別起源:飛播,天然,人工(4)類別代號(hào)100-200生態(tài)公益林200以上商品林林種:用材林210,經(jīng)濟(jì)林230,薪炭林220,防護(hù)林120,(商品林)特種用途林110,110有林地120疏林 130灌木林地140無立木林地150苗圃地210喬內(nèi)荒地220喬外荒地3. 系統(tǒng)實(shí)現(xiàn)3.1 開發(fā)工具PowerBuilder美國Sybase公司研制的一種新型、快速開發(fā)工具,是客戶機(jī)/服務(wù)器結(jié)構(gòu)下,基于Windows3.x、Windows95和WindowsNT的一個(gè)集成化開發(fā)工具。它包含一個(gè)直觀的圖形界面和可擴(kuò)展的面向?qū)ο蟮木幊陶Z言PowerScript,提供與當(dāng)前

13、流行的大型數(shù)據(jù)庫的接口,并通過ODBC與單機(jī)數(shù)據(jù)庫相連。SQL Server 2008是一個(gè)重大的產(chǎn)品版本,它推出了許多新的特性和關(guān)鍵的改進(jìn),使得它成為至今為止的最強(qiáng)大和最全面的SQL Server版本。這篇文章詳細(xì)介紹了Microsoft SQL Server 2008中的新的特性、優(yōu)點(diǎn)和功能 在現(xiàn)今數(shù)據(jù)的世界里,公司要獲得成功和不斷發(fā)展,他們需要定位主要的數(shù)據(jù)趨勢的愿景。微軟的這個(gè)數(shù)據(jù)平臺(tái)愿景幫助公司滿足這些數(shù)據(jù)爆炸和下一代數(shù)據(jù)驅(qū)動(dòng)應(yīng)用程序的需求。微軟將繼續(xù)投入和發(fā)展以下的關(guān)鍵領(lǐng)域來支持他們的數(shù)據(jù)平臺(tái)愿景:關(guān)鍵任務(wù)企業(yè)數(shù)據(jù)平臺(tái)、動(dòng)態(tài)開發(fā)、關(guān)系數(shù)據(jù)和商業(yè)智能。3.2 數(shù)據(jù)庫的建立3.2.1建

14、立并連接SqlServer或ODBC數(shù)據(jù)源在控制面板里性能維護(hù)->管理工具選擇: 數(shù)據(jù)源->創(chuàng)建新數(shù)據(jù)源,選擇excel driver(*.xls)數(shù)據(jù)源名自己設(shè)置myexcel97-2000點(diǎn)確定后雙擊myexcel97-2000,選擇數(shù)據(jù)源,點(diǎn)擊工作簿,選擇東南縣.excel選擇updata model from database 選擇selecion 的using a data source->ODBCmachine下拉框里選excle點(diǎn)擊modify,再選擇工作簿,最后單擊確定->Connect既可自動(dòng)的創(chuàng)建數(shù)據(jù)庫并建表。3.2.2向數(shù)據(jù)庫導(dǎo)入Excel數(shù)據(jù)首先

15、,通過SqlServer的企業(yè)管理器,右鍵點(diǎn)擊數(shù)據(jù)庫->新建數(shù)據(jù)庫,設(shè)置數(shù)據(jù)庫名MyForest打開SqlServer自帶的“導(dǎo)入導(dǎo)出數(shù)據(jù)”,數(shù)據(jù)源選擇excel97-2000,選擇文件名為東南縣: 下一步使用sql身份驗(yàn)證,填入相應(yīng)的用戶名密碼數(shù)據(jù)庫選擇剛剛新建的為MyForest或者新建一個(gè)數(shù)據(jù)庫名為TreeManagement導(dǎo)入完成后,測試導(dǎo)入的數(shù)據(jù)庫,結(jié)果如下:3.3 POWERBUILDER連接數(shù)據(jù)庫(1)在Powerbuilder工具欄中點(diǎn)擊db profile,進(jìn)入(2)雙擊ODB ODBC下Utilities下的Create ODBC Data Source,進(jìn)入(3)

16、選擇文件數(shù)據(jù)源(F),點(diǎn)擊下一步,進(jìn)入(4)選擇SQL Server, 點(diǎn)擊下一步,進(jìn)入(5)填寫數(shù)據(jù)源名稱(自己隨意給定,這里給fmsys),如果需要,單擊瀏覽按鈕,選擇保存數(shù)據(jù)源的位置;點(diǎn)擊下一步,在新界面中點(diǎn)擊完成,進(jìn)入(6)在上面填入描述(描述也可以空著)和服務(wù)器名稱(必須填,就是你目前登錄的SQL Server服務(wù)器,就是你的機(jī)器名);點(diǎn)擊下一步,進(jìn)入(7)選擇“實(shí)用用戶輸入登錄ID和密碼的SQL Server驗(yàn)證(S)”,輸入正確的登陸ID和密碼,這里均為fmsys;然后點(diǎn)擊下一步,進(jìn)入(8)在以上界面中,確認(rèn)默認(rèn)數(shù)據(jù)庫名為fmsys,否則應(yīng)選中“更改默認(rèn)數(shù)據(jù)庫名為(D)”,更改數(shù)

17、據(jù)庫名;點(diǎn)擊下一步,進(jìn)入(9)在此不修改其他內(nèi)容,點(diǎn)擊完成,進(jìn)入(10)點(diǎn)擊測試數(shù)據(jù)源,彈出測試結(jié)果(11)點(diǎn)擊確定,返回以上界面(ODBC Microsoft SQL Server安裝);點(diǎn)擊界面中的確定。至此,數(shù)據(jù)源創(chuàng)建完畢。(12)選擇ODBODBC,單擊右側(cè)的New建立自己的數(shù)據(jù)庫首選項(xiàng)(12)在彈出的對(duì)話框中DataSource選擇剛剛建立的fmsys名稱填Forest(13)選擇Preview選項(xiàng)卡,保存鏈接字符串以備后用。(14)點(diǎn)選DBProfiles中的Forest右側(cè)Connect。3.4 用戶登錄模塊實(shí)現(xiàn)(1)用戶界面如圖所示:(2)在SQL Server中的MyFore

18、st數(shù)據(jù)庫中建立Users這張表,用來管理登錄的用戶的基本信息。代碼如下:create table users(userid int primary key,username varchar(20),userlevel int,passwd varchar(50) not null);goinsert into users values(1,'張',1,'張');insert into users values(2,'王',1,'王');insert into users values(3,'zhang1',1,&

19、#39;zhang1'); (3)PowerBuilder的界面設(shè)計(jì)中插入靜態(tài)字段、文本框以及按鈕等,做一個(gè)基本的登錄的界面:(4)在登錄按鈕的單擊事件中:首先定義字符串類型的in_userid,in_passws,db_userid,db_passws,用來讀取這兩個(gè)文本框中的用戶名和密碼字段,然后通過查詢數(shù)據(jù)庫中已有的userid和passwd,若在數(shù)據(jù)庫中出現(xiàn)說明用戶名密碼輸入正確,用戶即可點(diǎn)擊登錄按鈕直接登錄,若輸入錯(cuò)誤,則不能進(jìn)入系統(tǒng)。3.5. 主界面與菜單實(shí)現(xiàn)(1)在powerbuilder工具欄中點(diǎn)擊new,進(jìn)入(2)選擇workspace,單擊OK(3)填寫文件名fms

20、ys,然后保存,即完成workspace的建立。然后重新點(diǎn)擊powerbuilder工具欄中點(diǎn)擊new,進(jìn)入(4)選擇target標(biāo)簽,在該界面中選中第一個(gè)圖標(biāo)(Application),即建立應(yīng)用,點(diǎn)擊OK,進(jìn)入(5)在以上界面中,先輸入應(yīng)用名(Application Name),然后點(diǎn)擊庫名(Library),應(yīng)用程序文件名(Library)以及路徑會(huì)自動(dòng)生成,同時(shí)生成的還有Target(目標(biāo))文件名及其路徑,這里不作修改,點(diǎn)擊Finish。(6)以上界面為一個(gè)應(yīng)用程序框架,其程序入口為fmsys.pbl下的應(yīng)用(application)。在application的事件中可以編寫應(yīng)用程序要

21、執(zhí)行的代碼,這是程序運(yùn)行最開始要執(zhí)行的代碼。一般在這里寫連接數(shù)據(jù)庫和打開主窗口的代碼。雙擊myexercise1,右邊的事件open下面的scripts窗口中寫入從前面臨時(shí)文本保存的數(shù)據(jù)庫鏈接參數(shù)。/ Profile ForestSQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "ConnectString='DSN=fmsys;UID=sa;PWD=000000'"Connect Using SQLCA;IF SQLCA.SQLCODE <> 0 THENMe

22、ssageBox("","數(shù)據(jù)庫鏈接錯(cuò)誤,錯(cuò)誤是:"+SQLCA.SQLERRTEXT)END IF(7)創(chuàng)建一個(gè)新窗體,在新窗口中插入標(biāo)題:點(diǎn)擊Insertàcontrolàstatictext,再在窗口上點(diǎn)擊鼠標(biāo),即在窗口上插入了靜態(tài)文本對(duì)象。編輯字體、字號(hào)、位置,結(jié)果如下:(8)新建標(biāo)題選擇Menu,單擊OK,得以下界面(即菜單)(9)在菜單項(xiàng)根部點(diǎn)右鍵在彈出菜單中選擇Insert SubMenu Item可以增加子菜單。重復(fù)此過程,添加“查詢”、“統(tǒng)計(jì)”、“幫助”三個(gè)菜單項(xiàng)。最后結(jié)果如。(10)在窗口對(duì)象屬性中,選擇右邊按鈕或

23、直接輸入菜單名。按選擇,則有(11)從已有菜單中選擇,按OK至此,菜單m_main已經(jīng)添加于窗口w_main之上。3.6. 修改模塊實(shí)現(xiàn)(1)新建一個(gè)Grid的數(shù)據(jù)窗口(2)在快速選擇對(duì)話框中選擇東南縣2001表中的所有字段。(3)設(shè)置Datawindow的字體顏色及行背景顏色。(4)調(diào)整字體和位置:鼠標(biāo)單擊數(shù)據(jù)窗口對(duì)象中的“關(guān)鍵字”,再按ctl-a,選擇數(shù)據(jù)窗口對(duì)象中所有的對(duì)象,選中者四角有小黑點(diǎn)。然后在屬性中選擇Font,將12號(hào)字改為8號(hào)字。用鼠標(biāo)拖動(dòng)網(wǎng)格線,調(diào)整行距。(5)調(diào)整完畢,按保存。保存數(shù)據(jù)窗口對(duì)象名為d_input。(6)通過數(shù)據(jù)窗口空間將數(shù)據(jù)窗口對(duì)象加入窗口對(duì)象(7)在窗口

24、上插入數(shù)據(jù)窗口控件點(diǎn)擊菜單InsertàControlàDataWindow,然后在窗口空白處點(diǎn)擊,得數(shù)據(jù)窗口控件。通過鼠標(biāo)適當(dāng)調(diào)整其大小,位置(8)插入靜態(tài)文本作標(biāo)題輸入“森林資源二類調(diào)查數(shù)據(jù)錄入”,調(diào)整字體、顏色、字號(hào)等,最后得。檢索數(shù)據(jù)雙擊myexercise1,打開窗口命令修改代碼為/ Profile ForestSQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "ConnectString='DSN=fmsys;UID=sa;PWD=000000'&qu

25、ot;Connect Using SQLCA;IF SQLCA.SQLCODE <> 0 THENMessageBox("","數(shù)據(jù)庫鏈接錯(cuò)誤,錯(cuò)誤是:"+SQLCA.SQLERRTEXT)elseOpen(w_main)END IFelseOpen(w_main)在w_input打開事件中輸入/把最開始用的數(shù)據(jù)庫連接參數(shù)SQLCA接過來Dw_1.SetTransObject(SQLCA);插入一個(gè)命令按鈕雙擊按鈕進(jìn)入代碼模式輸入代碼/檢索按鈕代碼Dw_1.retrieve();(9)設(shè)置菜單代碼(10)修改數(shù)據(jù)窗口對(duì)象的更新屬性101雙擊左

26、邊列表中的d_input10.2在菜單中選擇RowsàUpdate properties在界面中選中“Allow Updates”,選擇table to update(要更新的表名),在Updateble columns中選中除關(guān)鍵字以外的所有列,選擇unique key column為關(guān)鍵字字段。(11)點(diǎn)擊tab order 按鈕,設(shè)置tab order如下(12).在數(shù)據(jù)窗口對(duì)象中設(shè)置域檢查,滿足最基本的檢查要求12.1在固定小班號(hào)的Validation Expression中雙擊,彈出編輯框12.2輸入isNumber(gettext(),意為檢查輸入的是否為數(shù)字。然后用右邊

27、的Verify按鈕檢查語法是否正確。如果正確,單擊OK,回到上面的編輯界面。12.3在同一行的Validation Message列中雙擊,在彈出對(duì)話框中輸入出錯(cuò)提示信息“輸入錯(cuò)誤,必須為數(shù)字,請(qǐng)重新輸入!”12.4字符型域檢查字符串長度是否符合要求,這里以關(guān)鍵字為例;仍然在數(shù)據(jù)窗口對(duì)象d_input的編輯狀態(tài),雙擊窗口下部“關(guān)鍵字”行的Validation Expression列,出現(xiàn)對(duì)話框。在對(duì)話框中輸入:Len(gettext()=9 在同一行的Validation Message中輸入“長度必須為9位,請(qǐng)重新輸入!”數(shù)值型域設(shè)置取值的上下限或范圍,這里以坡向?yàn)槔ㄆ孪虼a為1-9);1

28、2.5仍然在數(shù)據(jù)窗口對(duì)象d_input的編輯狀態(tài),雙擊窗口下部“坡向”行的Validation Expression列,出現(xiàn)對(duì)話框。在對(duì)話框中輸入:number(gettext()>0 and number(gettext() <= 9。3.7. 錄入模塊實(shí)現(xiàn)(1)單擊new,選擇PB Object標(biāo)簽頁,在其中選定Free Form風(fēng)格(2)選擇東南縣2001表中所有的列。點(diǎn)擊確定(3)按OK,直至Finish,結(jié)果為(4)調(diào)整界面上各列的位置、字體、寬度等,得以下結(jié)果(5)設(shè)計(jì)用戶錄入界面添加int numnum=dw_1.scrolltorow(dw_1.rowcount()

29、num=dw_1.insertrow(num)dw_1.scrolltorow(num)確定dw_1.update();打開dw_1.setTransObject(SQLCA)dw_1.Retrieve()刪除dw_1.deleterow(0)檢索string sql_strlong numdw_1.retrieve()sql_str="select count(*) from eastsouth"num=getnumber(sql_str)st_2.text="東南縣2011小班數(shù)="sle_1.text=string(num)退出close(w_in

30、put)3.8. 查詢模塊實(shí)現(xiàn)(1)設(shè)計(jì)用戶界面如下圖所示(2)新建實(shí)例變量(3)向第一個(gè)下拉框ddlb_1中填寫代碼is_selected_colname = this.text向第二個(gè)下拉框中填寫代碼is_selected_operator = this.text第三個(gè)單行文本sle_1中填寫代碼id_value = this.text從而捕獲到了用戶在這三個(gè)控件中填寫的內(nèi)容,并存入實(shí)例變量。(4)當(dāng)用戶點(diǎn)擊按鈕“確定”的時(shí)候觸發(fā)查詢事件,代碼如下string s1,s2s1 = is_original_select + " Where " + is_selected_

31、colname + is_selected_operator + string(id_value)messagebox("",s1)dw_1.setSQLSelect(s1)dw_1.retrieve()sle_records.text = string(dw_1.rowcount()首先是建立一個(gè)查詢語句。應(yīng)用剛剛讀取的實(shí)例變量is_selected_colname、 is_selected_operator和id_value。合成查詢語句如select * From 東南縣2001 where 細(xì)班號(hào) > 4然后用dw_1.setSQLSelected(s1)執(zhí)行

32、查詢,將查詢結(jié)果在dw_1中顯示dw_1.retrieve(),然后將記錄數(shù)目填入sle_records.text,用戶可以看見查到了幾條記錄。3.9. 統(tǒng)計(jì)輸出模塊實(shí)現(xiàn)(1)設(shè)計(jì)用戶界面如下圖所示(2)定義全局變量String colname_tab0x表示每一張輸?shù)綌?shù)據(jù)庫的表中的字段名String coltype_tab0x為其字段的變量類型Int colnum_tab0x表示字段個(gè)數(shù),這些全局變量的定義,都是為了下面的函數(shù)中的調(diào)用提供方便。(3)就以table03為例,首先設(shè)定建表函數(shù)create_tab03(),string ss這里先定義一個(gè)建表語句ss,引用全局變量中的字段名,字段類型,組合起來執(zhí)行,便實(shí)現(xiàn)了往數(shù)據(jù)庫中插入表的操作。ss = "create table Table03("+ colname_tab031+" " + coltype_tab031。Execute Immediate :ss;return SQLCA.SQLCODE(4)然后是往建好的表中插入原始數(shù)據(jù)1.定義游標(biāo)C1 執(zhí)行查詢select 林種,地類, 齡組,sum(小班面積),sum(活立木蓄積) from

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論