999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于KingView的SQL數據查詢設計

2014-03-08 09:22:15李鳳霞靳寶全王吉星
自動化與儀表 2014年11期
關鍵詞:數據庫

楊 洋,李鳳霞,靳寶全,王吉星

(1.太原理工大學 電氣與動力工程學院,太原 030024;2.太原理工大學 新型傳感器與智能控制教育部與山西省重點實驗室,太原 030024)

工業控制系統中,為集中掌握現場設備運行狀況,需對數據對象進行實時存儲與查詢,因此,研究組態軟件與數據庫相結合的數據查詢技術具有重要意義[1]。早期工控系統中,利用程序語言將數據庫中數據從報表輸出,開發較為復雜。隨著計算機技術的不斷發展,專家、學者設計組態軟件內嵌數據庫技術應用到各種工程項目中,王普等設計組態軟件與SQL Server數據庫結合管理歷史數據,完成對現場的實時監控[2];耿乙文等采用iFIX組態軟件與Access數據庫實現信息共享、報表制作[3]。

近年來,組態軟件與數據庫的連接、數據庫的實時訪問技術已獲得較大發展[4-6],但在對數據庫內數據對象進行即時調用并按時間順序進行查詢的功能,仍需要進一步研究開發。本文利用KingView組態軟件的時間、日期控件,結合數據庫內嵌函數,設計了基于KingView的SQL Server數據庫數據查詢方案,完成了數據庫中歷史數據對象在KingView中按時間順序的查詢,實現了對現場運行狀態數字化、有序化監測。

1 數據庫查詢功能概述

根據工控系統上位機軟件的設計要求,上位機需對關聯數據庫內的歷史數據進行合理的調用、顯示,但在編寫數據查詢語言時可能會出現查詢出來的數據不能按順序排列,即只按日期順序排列數據但時間順序混亂,或出現時間順序排序正常但日期排序混亂的問題,為解決這一問題,設計了綜合KingView時間、日期控件及SQL函數的數據查詢方案,通過對時間、日期條件的判斷及表格模板的調用,使數據庫數據按日期時間順序以報表形式有序輸出。

2 數據庫查詢設計方案

數據庫數據查詢設計方案如圖1所示。創建數據庫、數據源并連接到KingView,編寫查詢條件語句并調用報表,完成數據按日期、時間順序有序查詢。

圖1 數據庫數據查詢方案示意圖Fig.1 Schematic diagram of database query program

2.1 數據庫的建立與連接

KingView與SQL Server數據庫實現數據傳輸時,首先將SQL Server數據庫添加到ODBC數據源中,執行如下腳本連接到名為“項目數據”的數據源,即可通過變量間接訪問數據庫:

SQLConnect(數據庫變量,"dsn=項目數據;uid=;pwd=");

KingView中的變量和ODBC數據源之間的數據傳輸通過KingView的SQL訪問管理器實現。SQL訪問管理器包括表格模板和記錄體2部分。

表格模板是在數據庫中創建存儲報表的模板,也是數據報表輸出格式,通過如下腳本函數在數據庫中創建一個名為“表格名”的存儲表格:

SQLCreateTable(數據庫變量,"表格名","表格模板");

記錄體可關聯KingView中的多個變量,每執行一次如下腳本函數,即將一組“記錄體1”所關聯變量組存入數據庫的表格中:

SQLInsert(數據庫變量,"表格名","記錄體 1")。

以上命令語言為數據庫按時間順序查詢奠定了基礎,使得KingView軟件開發平臺與數據庫通信正常連接。

2.2 按時間順序數據查詢的實現

在工業控制領域,要求能在歷史數據庫查詢任意時間段內的數據,以便檢查現場工作情況。

2.2.1 查詢數據顯示區設置

在KingView中,在數據查詢畫面中插入通用控件KVADODBGrid class,在畫面內拉出控件,在屬性選項中建立與SQL Server數據庫的連接,選擇前期新建的ODBC數據源(項目數據)、數據庫及在數據庫內創建的表格(表格名),選擇數據參數顯示表頭,數據居中,查詢超時設為100,并在索引表中將地址指針按順序排列,并按順序指向每條記錄體(每條記錄體按插入順序從上到下排列),如圖2所示,實現數據查詢按順序排列。

圖2 按時間順序排列原理Fig.2 Principle of chronological ordering

2.2.2 日期控件程序設計

在數據查詢畫面中,插入2個時間日期通用控件MicrosoftDateand TimePickerControl6.0(sp4),查詢開始時間 2 個,分別為 DATE1、TIME1,查詢結束時間2個,分別為DATE2、TIME2。DATA1、DATA2作為日期條件,屬性設置為1-dtpShort-Date。雙擊控件DATE1,在事件的closeup右側關聯函數端雙擊,函數聲明為closeup1(),并設計函數。

將DATE1控件輸入的年月日整數轉化為字符串形式作為查詢開始條件,與數據庫表格中的時間比較,并從數據庫表格中與DATE1輸入時間相同的位置開始輸出,同時要把所有轉化字符串的格式進行統一格式轉換,并調整上位機的時間格式與此格式保持一致,否則函數無法從數據庫內調用數據。控件closeup1()函數設計流程框架如圖3所示。

圖3 日期控件程序設計流程圖Fig.3 Flow chart of date control procedures

DATA2控件函數聲明為closeup2(),作為日期查詢結束條件,數據庫表格輸出的數據到輸入日期結束,函數設計方法與closeup1()相同。

2.2.3 時間控件程序設計

TIME1、TIME2控件屬性設置為 2-dtptime,雙擊控件,選擇事件,點擊change后的關聯內容,函數分別聲明為 change1()、change2()。

函數 change1()、change2()作為查詢時間開始條件、結束條件,程序設計流程與closeup1()大致相同:定義長整形變量,將控件中的變量值賦給對應的長整形變量,統一數據庫內時間格式與上位機中的時間格式,通過控件讀出輸入時間(輸入時間格式為:時:分:秒),即完成在KingView中時間賦值。

2.2.4 查詢按鈕的程序設計

查詢按鈕設計時,因為前期時間格式都是字符串格式,字符串沒有比較大小的功能,想要查詢一段時間內的數據,必須把字符串格式的時間轉化為長整形。在KingView界面內,新建一個按鈕,雙擊按鈕,選擇按下時執行程序,查詢按鈕程序設計流程如圖4所示,將時間開始條件與日期開始條件組成總開始條件,時間結束條件與日期結束條件組成總結束條件,比較結果正確后,將總開始時間與總結束時間組成綜合查詢時間作為輸出條件并按時間順序輸出數據報表。

圖4 查詢按鈕程序設計流程圖Fig.4 Flow chart of query button programming

3 數據查詢結果

在設計完成的控件中,開始時間設定為2014-07-18、11:21:40,結束時間設定為 2014-07-18、11:22:40,點擊查詢按鈕,報表輸出結果如表1所示。可見滿足查詢條件的數據全部顯示并按時間順序從早到晚依次排列,查詢數據以3路流量(流量A1、流量B1、流量C1)為例,但由于新建數據庫中變量未連接設備寄存器,所以數據顯示均為0。

表1 數據查詢結果Tab.1 Data query results

4 幾種數據查詢方法的比較

4.1 KVADODBGrid控件簡單查詢方法

使用KVADODBGrid控件查詢方法簡單,容易被設計人員開發使用,但不適合現有工業技術領域應用,此種方法開發的查詢功能操作步驟繁瑣,且不易觀察歷史數據,只可查詢全部數據信息,且沒有篩選數據的功能,使用靈活度差。

4.2 內嵌SQL函數查詢方法

利用SQL函數查詢方法基本能滿足用戶的各種要求,單一使用SQL函數,不易開發數據查詢功能,一般借助報表窗口控件,設計開發程序較為繁瑣,容易出現錯誤,對工程技術開發人員要求極高,不易掌握,靈活度相對上一方法較好,程序過程復雜。開發的軟件對硬件要求很高,且在運行過程中容易造成死機現象。

4.3 設計方案特點

充分利用KingView內的控件、內嵌SQL函數,開發了靈活方便、適用性強的數據查詢功能,滿足工控領域對數據查詢的各種要求,軟件開發難度適中,對工程開發人員要求合適,且開發技術容易掌握。開發的數據查詢軟件操作簡單靈活,容易理解。

5 結語

主要利用KingView時間日期控件并結合SQL內嵌函數,設計了數據庫數據報表調用查詢方案,并完成了查詢結果按時間順序有序排列。該方案設計方法簡單,工作可靠,使用戶可以方便地訪問和管理數據庫,實時掌握系統運行參數,優化了工控系統性能。

[1] 楊立保,許忠仁.組態軟件實時數據庫的研究與設計[J].自動化儀表,2009,30(8):19-21.

[2] 王普,郭繼業,孫崇正,等.基于SQL Server 2000的組態軟件實時數據庫[J].北京工業大學學報,2006,32(3):197-201.

[3] 耿乙文,伍小杰.基于ODBC技術實現iFIX組態軟件與關系數據庫 Access的通信[J].工礦自動化,2006(4):30-32.

[4] 趙秀梅.基于WINCC工控組態軟件的關系數據庫的研究[J].微型機與應用,2010(6):1-2,6.

[5] 陳慧,王中慶.基于ADO的組態軟件與關系數據庫通信研究[J].工業控制計算機,2012,25(4):74-75.

[6] 孫淳.基于OPC技術的組態軟件與SQL Server數據庫的通信研究[J].實驗技術與管理,2012,29(5):143-146. ■

猜你喜歡
數據庫
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
兩種新的非確定數據庫上的Top-K查詢
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
數據庫
財經(2015年3期)2015-06-09 17:41:31
數據庫
財經(2014年21期)2014-08-18 01:50:18
數據庫
財經(2014年6期)2014-03-12 08:28:19
數據庫
財經(2013年6期)2013-04-29 17:59:30
主站蜘蛛池模板: 5555国产在线观看| 国内自拍久第一页| 无码人妻热线精品视频| 亚洲一区二区日韩欧美gif| 国产香蕉97碰碰视频VA碰碰看| 日韩精品专区免费无码aⅴ| 精品久久久久久成人AV| 91最新精品视频发布页| 美女高潮全身流白浆福利区| 国产成人1024精品下载| 91精品伊人久久大香线蕉| 国产h视频在线观看视频| 久久精品亚洲中文字幕乱码| 国产男人天堂| 成年人国产视频| av一区二区三区高清久久| 女人天堂av免费| 久久超级碰| 国产精品lululu在线观看| 92午夜福利影院一区二区三区| 九九九国产| 天堂av高清一区二区三区| 在线播放真实国产乱子伦| 欧美性爱精品一区二区三区| 亚洲人成网站18禁动漫无码| 中文字幕在线观| 99这里只有精品在线| 四虎永久在线精品影院| 国产一级视频久久| 综合色在线| 美女被操91视频| 在线观看免费国产| 97免费在线观看视频| 午夜日b视频| 91在线中文| 成人午夜久久| 亚洲人在线| 人妻精品全国免费视频| 亚洲天堂伊人| 就去色综合| 国产美女在线观看| 毛片视频网址| 青青草原国产免费av观看| 欧美精品成人| 国产精品国产三级国产专业不| 国产福利一区视频| 亚洲精品无码av中文字幕| 狠狠v日韩v欧美v| 97一区二区在线播放| 五月婷婷精品| 亚洲天堂福利视频| 最新国产你懂的在线网址| 亚洲第一区欧美国产综合| 国产在线专区| 亚洲最大福利视频网| 污网站在线观看视频| 日本影院一区| 在线另类稀缺国产呦| 2048国产精品原创综合在线| 婷婷综合在线观看丁香| 在线va视频| 亚洲国产精品日韩av专区| 蜜桃视频一区| 四虎国产精品永久一区| 在线亚洲小视频| 白丝美女办公室高潮喷水视频| 就去吻亚洲精品国产欧美| 色综合久久无码网| 精品国产99久久| 亚洲色大成网站www国产| 黄色免费在线网址| 亚洲va视频| 日本人又色又爽的视频| 亚洲天堂视频网站| 99精品这里只有精品高清视频| 国产精选小视频在线观看| 久久毛片网| 国产欧美成人不卡视频| 欧美中文一区| 亚洲乱亚洲乱妇24p| 97视频在线精品国自产拍| 亚洲欧美自拍中文|