前兩天碰到一個學員咨詢了一個組態王的問題,要把組態王中采集到的變量值寫入到Access的數據庫中,在寫入的過程中發現無法把數據寫入到數據庫中,檢查時發現組態王已經和數據庫建立了連接,而且也能夠正常創建數據庫表格,就是無法把變量的值寫入到數據庫中,找了半天也沒有發現問題在哪里,后來通過遠程的方式幫他查找問題發現是組態表格模版里面建立的時間相關字段所選擇的變量類型與記錄體里面的變量類型不匹配,修改好數據類型后可把采集到的變量值正常寫入到數據庫中。
那么組態王中采集到的變量值是如何寫入到數據庫中呢?本文通過簡單的舉例方式為讀者描述介紹如何把采集到的變量值,寫入到組態王的Access數據庫中,主要步驟分為以下幾個:
首先建立組態王與下位設備的通信連接,然后在組態王的數據詞典中分別建立四個變量用于完成本次實例的測試,如下圖所示:
各變量的數據類型和變量的作用如下表格所示:
|
變量名稱 |
數據類型 |
變量的作用 |
|
DeviceID |
整形 |
用于存儲于數據庫的連接ID |
|
驅動器電壓 |
浮點數 |
采集驅動器電壓值 |
|
驅動器電流 |
浮點數 |
采集驅動器電流值 |
|
驅動器速度 |
浮點數 |
采集驅動器的運行速度 |
(1)新建Access數據庫文件
可在項目文件的存儲路徑下的空白處點擊鼠標右鍵,選擇插入一個Microsoft Access數據庫,如下圖所示。
此時建立的數據庫的后綴名為“.accdb”,打開數據庫文件后,選擇“文件”菜單,然后單擊“另存為”選項,選擇保持為后綴名為“.mdb”的格式的文件,并取名為Access,如下圖所示:
(2)定義數據源
通過ODBC 的方式定義數據源,在電腦的“開始”所有程序菜單中找到“windows 管理工具”選項,選擇里面的ODBC Data Sources(32-bit)的選項,如下圖所示:
在打開ODBC數據源管理程序對話框中,選擇“用戶DSN”選項,然后點擊“添加”按鈕,添加一個用戶數據源,在彈出的創建新數據源中選擇如圖所示的選項,并點擊“完成”按鈕。
在彈出的ODBC Microsoft Access安裝頁面中,定義一個數據源名稱,并單擊選擇按鈕,選擇前面所建立的“Access.mdb”的文件。
新建完成后,點擊“確定”按鈕即可完成數據源的定義,這里需要注意的是定義的數據源名稱建議使用英文字符,后續組態使用的時候需要用到。
(1)表格模版
新建表格模版,表格模版為后面在數據庫文件中建立數據庫表格時候需要使用,如下圖所示,在新建的表格模版中建立一個名為“Access模版”的表格模版,如圖所示的6個字段,為每個字段匹配好對應的變量類型。
(2)定義記錄體
建立完表格模版后,需要定義記錄體,記錄體定義是按表格模版的方式建立,并需要給定義的字段關聯對用的變量,新建一個名稱為“驅動器數據插入”的記錄體,并在該記錄體中定義如下圖所示的內容。
在組態王的畫面中建立三個變量用于顯示驅動器的電壓,電流和速度,并建立三個按鈕,用于實現與數據庫的連接、新建和數據的插入,如下圖所示:
連接數據庫按鈕的組態:在彈起的對話框中調用“SQLConnect”函數實現與數據庫的連接 ,組態如圖所示:
創建數據表格按鈕組態:在彈起的對話框中調用“SQLCreateTable”函數實現與數據庫表格的創建,組態如圖所示:
插入數據庫按鈕組態:在彈起的對話框中調用“SQLInsert”函數實現把變量數據填入到數據庫的表格中,組態如圖所示:
分別點擊“連接數據庫”按鈕,建立與數據庫的連接,然后點擊“創建數據庫表格”,可在數據庫中生成一個驅動器數據的表格,最后點擊“插入數據庫”每點擊一次 ,可插入一次數據到數據庫的表格中。如下圖所示
本實例中若需要自動連接數據庫和創建數據表格,或是插入數據庫時可通過使用命令語言的方式進行編寫命令語言進行數據的插入。
你學會了嗎?


返回頂部
刷新頁面
下到頁底