本站小編為你精心準備了遠程照明監(jiān)控系統(tǒng)數(shù)據(jù)庫設(shè)計參考范文,愿這些范文能點燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。
摘要:本文從數(shù)據(jù)庫的整體結(jié)構(gòu)進行設(shè)計,討論了每個表的基本內(nèi)容的設(shè)計,敘述了對數(shù)據(jù)的操作方法。
關(guān)鍵詞:網(wǎng)絡(luò);監(jiān)控;B/S;遠程照明
隨著互聯(lián)網(wǎng)科技的快速發(fā)展,監(jiān)控技術(shù)和網(wǎng)絡(luò)技術(shù)緊密的聯(lián)系起來,基于B/S結(jié)構(gòu)的上位機監(jiān)控系統(tǒng)被廣泛的應(yīng)用于工業(yè)生產(chǎn)中。數(shù)據(jù)庫是軟件系統(tǒng)開發(fā)中必不可少的環(huán)節(jié),在本系統(tǒng)中用SQL數(shù)據(jù)庫來儲存各個燈及用戶的相關(guān)信息。客戶通過訪問Web服務(wù)器獲取數(shù)據(jù)庫中燈的狀態(tài)及基本信息,為系統(tǒng)的操作提供了基本的支持。
1數(shù)據(jù)庫結(jié)構(gòu)設(shè)計
數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計必須從監(jiān)控系統(tǒng)的實際需求出發(fā),合理地整理數(shù)據(jù)信息,避免多余或者遺漏[1]。一個數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計是否規(guī)范是一個系統(tǒng)是否成功的關(guān)鍵,它關(guān)系到系統(tǒng)的性能、穩(wěn)定性及其擴展能力[2]。所以在設(shè)計本次基于ASP.NET遠程照明監(jiān)控系統(tǒng)的數(shù)據(jù)庫時,需要充分考慮整個系統(tǒng)運行過程中所需要涉及到的數(shù)據(jù)[3]。數(shù)據(jù)庫的設(shè)計采用SQL2012軟件,數(shù)據(jù)庫名稱為zzwdeng,依據(jù)以上所說該系統(tǒng)設(shè)計了燈的資料表、管理員資料表等5張數(shù)據(jù)庫表單,分別用來儲存燈與用戶的相關(guān)信息,數(shù)據(jù)庫統(tǒng)計表,見表1。將5張數(shù)據(jù)表依照彼此之間的關(guān)系在SQL數(shù)據(jù)庫中完成創(chuàng)建,數(shù)據(jù)庫的關(guān)系圖,如圖1所示。
2表單的設(shè)計
2.1節(jié)點信息表
用來儲存每盞燈的基本資料,例如:燈的分布位置、額定功率、燈的編號、燈具類型、燈的初始使用時間等。管理員通過訪問該表就能方便地了解到每盞燈的基本資料,以方便平時的維修與管理。見表2。
2.2燈的狀態(tài)表
燈的狀態(tài)需要時刻記錄,以確保管理員能夠能夠獲得每時每刻的狀態(tài)信息,用來管理整個照明的方案。依據(jù)燈的狀態(tài)是否即時,可將其分為燈的當(dāng)前狀態(tài)表與變更狀態(tài)表,兩張表的區(qū)別在于前者只刷新當(dāng)前燈的狀態(tài)而后者需記錄每盞燈狀態(tài)變更的信息,也就是說當(dāng)前狀態(tài)表中每一個數(shù)據(jù)行都會與某盞燈相對應(yīng),當(dāng)某盞燈的狀態(tài)發(fā)生變化時只需變更該數(shù)據(jù)行中的狀態(tài)列信息即可,而變更狀態(tài)表以時間為依據(jù),依次儲存變更了狀態(tài)燈的信息。燈的狀態(tài)表,見表3。
2.3管理員資料表
管理員資料表用來記錄賬戶名和用戶密碼等必要的數(shù)據(jù),以及個人相關(guān)的其他附加資料,管理員資料表,見表4。
2.4管理員登錄表
管理員登錄表是用來記錄用戶每次登錄系統(tǒng)的詳細信息,以方便系統(tǒng)的管理。管理員登錄表,見表5。
3數(shù)據(jù)庫表操作
在系統(tǒng)開發(fā)中,需要對數(shù)據(jù)進行大量地操作,其主要內(nèi)容包括數(shù)據(jù)的儲存、數(shù)據(jù)的讀取、數(shù)據(jù)的更新及其數(shù)據(jù)的刪增等。在ASP.NET服務(wù)器腳本中自帶的ADO.NET能夠?qū)崿F(xiàn)不同數(shù)據(jù)源的交互,不同的數(shù)據(jù)源間依據(jù)數(shù)據(jù)庫及協(xié)議進行交流。ADO.NET技術(shù)為系統(tǒng)提供了平臺互用性以及可伸縮的數(shù)據(jù)訪問方式,它能確保系統(tǒng)操作過程中便捷地訪問數(shù)據(jù)庫的開發(fā)需求,增強了對非連接編程模式的支持,ADO.NET技術(shù)對數(shù)據(jù)的操作可分為Connection、Recordset以及Command3個步驟。其中Connection主要用來開啟數(shù)據(jù)庫文檔,Recordset實現(xiàn)儲存數(shù)據(jù)庫中的內(nèi)容,Command是用來下達相應(yīng)的指令。通過以上3個步驟就能完成對數(shù)據(jù)庫的操作。DataSet可以被視為內(nèi)存自身的數(shù)據(jù)庫,也可以被視為是數(shù)據(jù)表的集合,它可以包含任意數(shù)據(jù)源中的多個數(shù)據(jù)表,獨立于數(shù)據(jù)來源外而存取數(shù)據(jù)。DataSet里包含一個或多個由資料列和資料行所組成的物件集合,而這些物件的組成包括列、行、主鍵、約束、外鍵與關(guān)系信息。DataSet將所需的數(shù)據(jù)全部加載到內(nèi)存中再執(zhí)行,使得數(shù)據(jù)的訪問速度得到提高,也大大增加了硬盤數(shù)據(jù)的安全性。數(shù)據(jù)庫訪問流程圖,如圖2所示。
[參考文獻]
[1]孟慶博.基于ASP.NET的數(shù)據(jù)遠傳管理系統(tǒng)[D].遼寧:大連理工大學(xué),2008.3~6.
[2]黃強.基于Zigbee的校園照明監(jiān)控系統(tǒng)設(shè)計與實現(xiàn)[D].四川:西南交通大學(xué),2009.32~48.
[3]谷文彤.基于B/S結(jié)構(gòu)的城市照明遠程監(jiān)控與管理系統(tǒng)[J].浙江電力,2011,(5):25~28.
作者:惠亮亮 王開銘 陳華泰 單位:陜西鐵路工程職業(yè)技術(shù)學(xué)院