摘 要: 從探討計算機輔助系統在“野外生存生活訓練”實踐中所起的作用出發,闡述了計算機輔助系統在此實踐中的可行性和必要性,給出了系統的數據模型和功能模塊構成,完成對系統的數據庫結構設計。在此基礎上以可視化程序設計語言Powerbuilder和Sybase數據庫為基礎,實現系統初步預定的各項功能。
關鍵詞: 野外生存生活;訓練;計算機輔助系統
野外生存是指在遠離居民點的山區、叢林、荒漠、孤島等野外環境中,在不完全依靠外部提供生存、生活的物質條件下,依靠個人、集體的努力保存生命、維持健康生活的能力[1]。
野外的環境有可能是北極冰地或茫茫沙漠、熱帶雨林或無際大海。這些惡劣的自然環境要求人們具有獨特的生存技能和技巧[2]。如:山川、密林、莽原及沼澤,這些都會給身處其中的人們帶來險境,但同時這些獨特的自然環境也提供了相應的生存條件——食物、燃料、水及庇身所等,但前提是必須熟知如何利用它們。所以一般成功的幸存者往往是那些既懂得正確的“野外生存生活”理論知識又能利用這些理論知識來指導自己去應付不同惡劣環境的人們[3]。
1 計算機輔助系統的必要性
在進行野外生存生活訓練實踐中出現了所不太熟悉的自然環境時,當多種情況需要做正確的選擇時,該如何對待[4]?因為稍微的失誤,將會造成嚴重的后果,輕則意味著前功盡棄,重則甚至危害到人的生命。這時如能有一個正常的理論作為指導,就會顯得如此重要。如:當處在山崖頂上準備借助繩索爬下山時,面臨著一個繩索打結的問題,因為不同的打結方法有不同的應用對象,在平時運用這種拴馬結是一件非常簡單的事,但當時的情況有可能使野外生存生活的人顯得緊張,甚至想不起怎么打結了。這時能有這樣一套計算機輔助系統,簡單地輸入“山崖”、“繩索打結”關鍵字后,系統將圖文并茂地介紹這種拴馬結的應用環境及打結方法,并配有視頻演示。由此可見,這種計算機輔助系統對每個進行“野外生存生活”實踐的人們來說是很有必要的。
2 系統設計與功能
根據系統設計要求并結合“野外生存生活訓練”的特點,系統設計主要包含了資源專家庫和查詢檢索兩大模塊。
2.1 資源專家庫模塊
資源專家庫是指以當前野外生存生活訓練各種信息資源(包括文本文獻資料,網絡信息資源等)作為數據來源,按其相關性原則進行整序、加工和綜合分析處理,提取主要的信息要素按照一定的規范格式進行存儲而形成的集合。它主要由以下兩部分數據結構組成。
2.1.1 資源數據模型
根據野外生存生活的特點,通過梳理和抽象,對數據模型進行概念設計,建立統一資源數據模型的整體框架,如圖1所示。
2.1.2 資源數據描述
系統針對每個層次的數據框架,配之與對應的數據描述,這種數據描述不僅包括詳細的文字說明,還應有圖片的分解散和視頻演示,同時也包括專家的經驗和建議。具體資源數據描述可以借鑒圖4“野外生存生活訓練”計算機輔助系統主界面所列的內容。
2.2 查詢檢索模塊
系統采用基于關鍵詞和主題分類的檢索方法,以提高檢索的查全率和查準率。該模塊可以通過簡單的關鍵字輸入自動實現數據庫驅動、連接以及執行SQL語句返回查詢結果。檢索的流程圖如圖2所示。
3 數據庫表設計
系統的特點要求每種資源數據的描述需要用到大量的文字(*.txt、*.doc)、圖片(*.jpg、*.bmp)、視頻(*.avi、*.rm)等大容量文件數據,而這些數據的特點要求數據庫表設計時定義的字段類型必須是二進制大對象BLOb(Binary Large Objects)類型的字段(注:Sybase數據庫使用long Binary字段類型存儲Blob類型的數據)。下面以“拴馬結”為例,定義表SMJ圖片類型的字段Phote N,具體字段的定義如表1所示。
系統通過Blob變量讀取外部文件,運行針對Blob變量的操作命令Selectbolb、Updateblob和數據庫中Blob類型的字段進行數據交換,以實現數據庫中Blob類型數據的增加、更新和提取。Selectbolb命令的語法規則為[5]:
Selectblob BlobColumn
into BlobVariable from Tablename
Where Criteria;
功能:在數據表中讀取符合條件的Blob字段內容到Blob變量中。
Updateblob命令的語法規則為:
Updateblob Tablename
Set BlobColumn=BlobVariable
Where Criteria;
功能:使用BLOb變量更新數據表中符合條件的BLOb字段內容。
下列程序描述Selectbolb命令從數據庫表SMJ中提取圖片并顯示的實例。
//定義整型變量li_ID
Integer i_ID
//定義Blob類型變量lblb_BMP
Blob lblb_BMP
//得到該條記錄的記錄號(一般為主關鍵字)
li_ID=Message.DoubleParm
//檢索該條記錄到數據窗口dw_prod顯示
dw_prod.SetTransObject(sqlca)
dw_prod.Retrieve(li_ID)
//使用SelectBlob命令從SMJ表的Phote1字段中提取值放入lblb_BMP變量中
SelectBlob Phote1
into :lblb_BMP
from SMJ
where id=:li_ID;
//圖片控件p_product顯示lblb_BMP變量的值
p_product.SetPicture(lblb_BMP)
描述Updateblob命令實現表SMJ增加,更新圖片的程序略。
5 系統的實現
“野外生存生活訓練”計算機輔助系統設計采用數據庫系統開發軟件PowerBuilder和數據庫軟件Sysbase集成開發,利用面向對象的方法,設計并開發具有友好用戶界面、操作簡便的計算機輔助系統,實現了對各種野外活動內容的編輯、瀏覽、檢索和維護等功能。系統主界面如圖4所示。
“野外生存生活訓練”計算機輔助系統將所有關于野外生存活動的內容以文字說明、圖片羅列、視頻演示等形式存儲在數據庫中,是一部“野外生存生活訓練”的百科大全。系統的檢索查詢功能把輸入的不同關健字進行組合以達到智能查詢的效果。系統的這些特點方便了正在進行“野外生存生活訓練”的人們,同時系統對教學、科研和社會服務也有很大實用性。
參考文獻
[1] 王樹宏.高校體育課程中增設野外生存生活訓練內容的探討[J].成都體育學院學報,2009,35(1):92-94.
[2] (英)彼得·德瑞克.野外生存指南[M].曹林譯.哈爾濱:黑龍江科學技術出版社,2009.
[3] 梁傳成,梁傳聲.野外生存教程[M].北京:高等教育出版社,2003.
[4] (日)梶原玲,成田式部.野外求生寶典[M].蕭曉蘋譯.海口:海南出版公司,2008.
[5] 張立科.PowerBuilder9.0程序設計與開發技術[M].北京:人民郵電出版社,2004:35-38.