SQL數據庫在過程層和更高層次的企業網絡控制層之間的數據是可以進行交換的。本FAQ的解答了如何配置和使用WinCC(TIA Portal)和WinCC flexible Runtime 作為客戶端通過腳本與SQL服務器通信 。WinCC (TIA Portal)/WinCC flexible 一般通過腳本訪問 SQL 數據庫,除了歸檔變量和報警信息。為了訪問 SQL 數據庫,SQL server中必須創建數據庫實例。WinCC (TIA Portal)/WinCC flexible PC Runtime 作為 SQL 客戶端運行。
WinCC (TIA Portal)/WinCC flexible 一般通過腳本訪問 SQL 數據庫,除了歸檔變量和報警信息。為了訪問 SQL 數據庫,SQL server中必須創建數據庫實例。WinCC (TIA Portal)/WinCC flexible PC Runtime 作為 SQL 客戶端運行。
理論上,基于 Windows CE 的面板不能訪問 SQL 數據庫。
必要條件:
SQL server1
Windows 中必須創建 SQL 數據源
WinCC (TIA Portal) 或 WinCC flexible Advanced ES
WinCC (TIA Portal) 或 WinCC flexible PC Runtime
1 SQL server 必須和操作系統相匹配,同時也必須和 WinCC (TIA Portal)相匹配。
注釋:
樣例只是一個建議的方法,當然,可能也會有其它更好的解決方案。
創建數據源
為了創建一個對 ODBC 數據源的訪問,必須首先創建一個數據源。在 Windows 控制面板的“管理工具 > 數據源(ODBC)”中創建數據源。以下的例子中使用的數據源是“Database_1”;連接到 SQL server “WINCCFLEXIBLE”。
圖. 01
SQL數據庫的管理和使用
以下各節說明如何使用SQL數據庫,使用VB腳本的摘錄。這些腳本也在本條目的項目下載中。
1. 管理
在 SQL 數據庫中可以創建一個或多個不同結構的數據表。
1.1 創建 SQL 數據庫:腳本“Create_database”
為防止腳本中萬一發生錯誤需要使用“On Error Resume Next”指令。這樣一旦錯誤發生,程序會自動跳到錯誤的下一行執行。
為了創建到 SQL 數據庫的連接需要使用對象“ADODB.Connection”。“ADODB.Recordset”用于創建、編輯或者刪除數據庫或者表,例如。
只有知道這個數據源的提供者和名字該數據源才能被打開。到數據源連接的建立需要使用“conn”對象的“Open”方法實現。
如果連接過程中出現超時,會產生以下錯誤,輸出系統錯誤,腳本立即停止。
通過 SQL 命令“CREATE DATABASE”創建并命名一個新的數據庫;這些通過“conn”對象的“Execute( SQL Table )”方法實現。
如果數據庫已經存在,則執行相應的創建錯誤判斷程序。“Close”方法用于斷開和數據源的連接。
圖. 02
SQL 語法:
CREATE DATABASE
1.2 刪除 SQL 數據庫: 腳本"Delete_database"
理論上,其腳本結構和“Create_database”腳本相同。可以使用 SQL 命令“DROP DATABASE”刪除數據庫和數據庫名稱。
圖. 03
SQL 語法:
DROP DATABASE
2. 表
在任何一個 SQL 數據庫中都可以創建一個具有單獨結構的數據表。表01的數據結構創建如下:
表的數據結構 | ||||
列 | 1 | 2 | 3 | 4 |
數據類型 | SMALLINT | Char(30) | SMALLINT | SMALLINT |
表 01 - 表的數據結構
表的數據結構可以以任何方式組合。附件的樣例程序使用的就是上面的數據結構。
2.1 創建表: 腳本"Create_new_table"
為了打開數據源中的一個數據源以便連接數據庫,腳本中需要下面的兩個對象:“ADODB.Connection”用于建立連接和“ADODB.Recordset”用于編輯數據源。
“Open”中的“Initial Catalog”參數用于建立和數據源中特定數據庫的連接。“Database_1”,在Windows中創建的數據源,用參數“DSN” 表示。
使用 SQL 語法“CREATE TABLE”創建 SQL 表,以及表的名稱和布局(數據結構)。
圖. 04
SQL 語法:
CREATE TABLE
注意:
對于“CREATE TABLE”命令還有其它可選的擴展參數。
2.2 復制表:腳本 "Copy_table"
連接訪問需要用到對象“ADODB.Connection”和“ADODB.Recordset”。
使用 SQL 命令“SELECT * INTO”和擴展參數“FROM”,可將特定表中的所有數據復制到一個新表中。語法“SELECT *”和命令“SELECT ALL”意義相同,通過“FROM”命令表示在前一個表中的所有數據。目的表通過“INTO”定義。
注意:
SQL 語句“SELECT”可以隨意的和其它命令參數組合使用。更多的信息請參考相關文獻或者互聯網。
圖. 05
SQL 語法:
SELECT
注意:
對于 SQL 命令“SELECT”還有其它的命令可以選擇組合使用。
2.3 刪除表:腳本 "Delete_table"
為了刪除表,用戶必須連接相應的數據源。使用命令“DROP TABLE”從數據庫中刪除表及其名稱。
- 頻器集成安全 STO SS1 SS2 SLS 是什么含義 2024-12-27
- 使用西門子SCL獲取整數長度 2024-12-27
- 西門子S7-1200 PLC控制V90伺服驅動器速度運行模式設備組態 2024-12-27
- 變頻器的選型參考 2024-12-27
- 西門子S200伺服系統有些什么亮點 2024-12-27
- 2023年可編程邏輯控制器(PLC)公司Top5 2024-12-27
- 西門子TIA博途PLC技巧:如何在HMI上顯示PLC代碼流程 2024-12-27
- 西門子SINAMICS V90伺服驅動器的?兩種版本與兩種控制方式 2024-12-27
- PLC高效設計與批量編輯方式 2024-12-27
- 西門子推出新款伺服驅動系統為設備制造商簡化項目工程 2024-12-27
- 高效便捷的伺服系統——西門子V90,你了解多少 2024-12-27
- S7-1200西門子用戶程序結構簡介 2024-12-27
- 西門子S7-1200伺服電動機的POT運動控制 2024-12-27
- 西門子IPC427D 從重裝系統到跑1507S 2024-12-27
- 西門子案例推薦—S7-1500(T)通過工藝對 連接 S200實現位置控制(使用GSD文件) 2024-12-27
聯系方式
- 電 話:18126392341
- 聯系人:梁濤
- 手 機:15267534595
- 微 信:15267534595