車達(dá)升 耿殿鵬 李曉東
【摘 要】論文通過分析基層臺站實(shí)際業(yè)務(wù)需求,基于C#語言設(shè)計(jì)了一套氣象信息管理系統(tǒng)。系統(tǒng)提供了數(shù)據(jù)錄入、時(shí)數(shù)據(jù)查詢、多要素查詢和日數(shù)據(jù)查詢功能,界面友好,數(shù)據(jù)查詢存儲便捷。
【Abstract】By analyzing the actual business demand of the base station, this paper designs a set of meteorological information management system based on C# language. The system provides the functions of data entry, time data query, multi-factor query and daily data query. It has friendly interface and convenient data query and storage.
【關(guān)鍵詞】C#;氣象信息;查詢
【Keywords】C#; meteorological information; query
【中圖分類號】TP311? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文獻(xiàn)標(biāo)志碼】A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 【文章編號】1673-1069(2019)12-0178-03
1 引言
基層臺站觀測人員將氣象數(shù)據(jù)以文本形式存入計(jì)算機(jī),該形式的資料查詢統(tǒng)計(jì)只能通過原始翻閱的方式進(jìn)行,須建設(shè)一套基于計(jì)算機(jī)數(shù)據(jù)庫的智能查詢信息管理系統(tǒng),便于歷史氣象數(shù)據(jù)的統(tǒng)計(jì)分析,進(jìn)行區(qū)域氣候背景分析。
2 業(yè)務(wù)需求分析
2.1 數(shù)據(jù)錄入
能夠?qū)⑽谋疚募袛?shù)據(jù)存入數(shù)據(jù)庫,當(dāng)文件讀取錯誤時(shí),能夠定位文件,并跳過錯誤將剩余數(shù)據(jù)讀取。
2.2 數(shù)據(jù)統(tǒng)計(jì)
2.2.1 時(shí)記錄統(tǒng)計(jì)
①能夠選擇起止時(shí)間和要素種類顯示數(shù)據(jù)庫中的時(shí)記錄,并能夠修改錯誤數(shù)據(jù)。
②能夠?qū)r(shí)記錄中的總云量、風(fēng)速、風(fēng)向、能見度、天氣現(xiàn)象、氣溫、相對濕度、分云量等要素自由組合,要素值域可限定(>,≥,<,≤,=),時(shí)間按年、月(季)、日(旬)、時(shí)和持續(xù)時(shí)間等進(jìn)行綜合統(tǒng)計(jì),并能夠輸出符合條件的總天數(shù)、符合條件的日期;要素的平均值最大最小值。
2.2.2 日記錄統(tǒng)計(jì)
①能夠選擇起止時(shí)間和要素種類顯示數(shù)據(jù)庫中的日記錄,并能夠修改錯誤數(shù)據(jù)。
②能夠?qū)θ沼涗浿械娜兆罡邭鉁?、日最低氣溫、日降水量等要素自由組合,要素值域可限定,時(shí)間按年、月(季)、日(旬)等進(jìn)行綜合統(tǒng)計(jì),輸出符合條件的總天數(shù)、每一天的日期,要素的平均值最大最小值。
2.2.3 天氣紀(jì)要
能夠選擇起止時(shí)間和要素種類顯示數(shù)據(jù)庫中的天氣紀(jì)要。
2.3 系統(tǒng)維護(hù)
能夠?qū)ο到y(tǒng)登陸進(jìn)行認(rèn)證,并記錄操作日志。
2.4 數(shù)據(jù)表格輸出
系統(tǒng)設(shè)計(jì)過程中對各種數(shù)據(jù)表格進(jìn)行設(shè)計(jì),包括:時(shí)記錄表格、日記錄表格、時(shí)記錄統(tǒng)計(jì)輸出表格、日記錄統(tǒng)計(jì)輸出表等。
3 功能設(shè)計(jì)
根據(jù)業(yè)務(wù)需求,進(jìn)行功能模塊劃分與設(shè)計(jì),主要劃分為三大模塊,分別為數(shù)據(jù)錄入模塊、數(shù)據(jù)查詢模塊和系統(tǒng)維護(hù)模塊,其中數(shù)據(jù)查詢模塊為核心模塊,主要有時(shí)記錄查詢和日記錄查詢[1]。時(shí)記錄查詢中,單要素統(tǒng)計(jì)查詢?yōu)榛A(chǔ)模塊,查詢條件有時(shí)間條件和要素取值范圍條件,其中連續(xù)時(shí)間條件為查詢難點(diǎn),功能圖具體如圖1所示。實(shí)際編程過程中,直接將所有功能劃分在數(shù)據(jù)錄入模塊、時(shí)數(shù)據(jù)查詢模塊、多要素查詢模塊、日數(shù)據(jù)查詢模塊和系統(tǒng)維護(hù)模塊。本文重點(diǎn)介紹數(shù)據(jù)錄入模塊、時(shí)數(shù)據(jù)查詢模塊、多要素查詢模塊和日數(shù)據(jù)查詢模塊。
4 詳細(xì)設(shè)計(jì)
4.1 數(shù)據(jù)庫設(shè)計(jì)
4.1.1 數(shù)據(jù)要素
文檔中出現(xiàn)的主要數(shù)據(jù)要素:站號、年份、月份、日、觀測次數(shù)、時(shí)、總云量、風(fēng)向、風(fēng)速、能見度、天氣現(xiàn)象、氣溫、露點(diǎn)溫度、相對濕度、絕對濕度、本站氣壓、海平面氣壓、云底觀測方式、分云量、云狀、云底高、日最高氣溫、日最低氣溫、日合計(jì)降水量、日合計(jì)降水量、日降水持續(xù)時(shí)間、天氣紀(jì)要。
4.1.2 時(shí)數(shù)據(jù)表格設(shè)計(jì)
依據(jù)文檔中的時(shí)數(shù)據(jù)要素,時(shí)數(shù)據(jù)表格設(shè)計(jì)如表1所示,數(shù)據(jù)由站點(diǎn)、日期和時(shí)唯一確定。
4.1.3 日數(shù)據(jù)表格設(shè)計(jì)
依據(jù)文檔中的日數(shù)據(jù)要素,日數(shù)據(jù)表格設(shè)計(jì)如表2所示,數(shù)據(jù)由站點(diǎn)和日期唯一確定。
4.1.4 數(shù)據(jù)庫操作函數(shù)
數(shù)據(jù)庫操作函數(shù)包括獲得數(shù)據(jù)庫連接、關(guān)閉數(shù)據(jù)庫連接、寫日志函數(shù)、存時(shí)數(shù)據(jù)函數(shù)、存日數(shù)據(jù)函數(shù)、時(shí)數(shù)據(jù)是否存在函數(shù)、日數(shù)據(jù)是否存在函數(shù)、刪單一時(shí)數(shù)據(jù)函數(shù)、刪單一日數(shù)據(jù)函數(shù)、刪條件時(shí)數(shù)據(jù)函數(shù)、刪條件日數(shù)據(jù)函數(shù)、時(shí)數(shù)據(jù)查詢函數(shù)、多要素查詢函數(shù)、建立中間表格函數(shù)、刪除中間表格函數(shù)、更新中間表格函數(shù)、統(tǒng)計(jì)天數(shù)函數(shù)、日數(shù)據(jù)查詢函數(shù)和刪除日數(shù)據(jù)函數(shù)等[2]。其中,時(shí)數(shù)據(jù)查詢函數(shù)、多要素查詢函數(shù)和日數(shù)據(jù)查詢函數(shù)為核心函數(shù)。
4.2 數(shù)據(jù)錄入模塊設(shè)計(jì)
4.2.1 界面設(shè)計(jì)
數(shù)據(jù)錄入模塊界面設(shè)計(jì)。
4.2.2 程序設(shè)計(jì)
數(shù)據(jù)錄入模塊程序流程圖,開始-初始化-選擇文件-根據(jù)是否為多文件,分為單文件處理模塊和多文件處理模塊。其中,單文件處理模塊為基本模塊,包括連接數(shù)據(jù)庫函數(shù)、報(bào)文處理函數(shù)、存時(shí)數(shù)據(jù)函數(shù)和存日數(shù)據(jù)函數(shù)等,主要用于處理報(bào)文并將處理結(jié)果存入數(shù)據(jù)庫中[3]。
4.3 時(shí)數(shù)據(jù)查詢模塊設(shè)計(jì)
時(shí)數(shù)據(jù)查詢模塊程序流程為:時(shí)數(shù)據(jù)查詢→設(shè)置站點(diǎn)參數(shù)→設(shè)置時(shí)間參數(shù)→調(diào)用查詢模塊→顯示結(jié)果。其中,查詢函數(shù)為核心函數(shù),通過調(diào)用數(shù)據(jù)庫操作函數(shù)中的時(shí)數(shù)據(jù)查詢函數(shù)完成相應(yīng)功能。
4.4 多要素條件查詢模塊設(shè)計(jì)
多要素查詢模塊程序流程為:多要素查詢→設(shè)置站點(diǎn)參數(shù)→設(shè)置時(shí)間參數(shù)→設(shè)置多邊查詢條件→設(shè)置連續(xù)時(shí)間條件→調(diào)用查詢模塊→顯示結(jié)果。其中,查詢函數(shù)為核心函數(shù),通過界面確定查詢條件,通過調(diào)用數(shù)據(jù)庫操作函數(shù)中的多要素查詢函數(shù)完成相應(yīng)功能[4]。
4.5 日數(shù)據(jù)查詢模塊程序設(shè)計(jì)
日數(shù)據(jù)查詢模塊程序流程為:日數(shù)據(jù)查詢→設(shè)置站點(diǎn)參數(shù)→設(shè)置日期參數(shù)→調(diào)用查詢模塊→顯示結(jié)果。其中,查詢函數(shù)為核心函數(shù),通過界面確定查詢條件,通過調(diào)用數(shù)據(jù)庫操作函數(shù)中的日數(shù)據(jù)查詢函數(shù)完成相應(yīng)功能。
5 結(jié)語
本文設(shè)計(jì)了一套基于實(shí)況數(shù)據(jù)的統(tǒng)計(jì)查詢系統(tǒng),較好地完成了氣象信息的業(yè)務(wù)需求,為氣象資料統(tǒng)計(jì)分析提供了便利條件。
【參考文獻(xiàn)】
【1】閆蕎蕎.省級氣象資料歸檔管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].氣象水文海洋儀器,2017(1):50-53.
【2】鄢志宇,楊桂娟.錦州地區(qū)地面遙測氣象數(shù)據(jù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2012,35(17):169-170+176.
【3】滕水昌.基層臺站地面氣象資料數(shù)據(jù)管理檢索系統(tǒng)[J].氣象科技,2012,40(1):61-64.
【4】康立寧.C#在自動氣象站數(shù)據(jù)管理中的應(yīng)用[J].電腦編程技巧與維護(hù),2013(10):49-51.
【作者簡介】車達(dá)升(1985-),男,江蘇贛榆人,工程師,從事氣象設(shè)備管理研究。