Wincc操作数据库SQLSERVER

 WINCC写数据库
在WINCC的图形编辑器中,在输入域的属性中。选择事件。再选择键盘的释放动作,在动作代码框中写下例如以下代码:
Dim conn,rs
Dim strsql
Dim a
a=HMIRuntime.Tags("datavariable").Read
Set conn=CreateObject("adodb.connection")
   Set rs=CreateObject("adodb.recordset")
   conn.Provider = "sqloledb"
   conn.open "SERVER=Yang-PCWINCC;uid=sa;pwd=sa;database=datasavetest"
   strsql="insert into tt_ch(TagValue)VALUES('" & a &"')"
   Set rs=conn.execute(strsql)

   conn.close
   Set rs=Nothing

   Set conn=Nothing     

End If

如此,就可以实现WINCC的实时数据向SQL SERVER的数据写入。

 WINCC读数据库

Dim conn,rs
Dim strsql
Dim temp1,temp2

Set conn=CreateObject("adodb.connection")
    Set rs=CreateObject("adodb.recordset")
    conn.Provider = "sqloledb"
    conn.open "SERVER=YANG-PCWINCC;uid=sa;pwd=1988525;database=datasavetest"
 
  strsql="select * from table_1"
    Set rs=conn.execute(strsql)
   
    rs.movenext'读取数据集中的下一条 还能够通过数据集的其它属性进行操作
   
temp1 = rs.Fields(0).Value '取第一列的值

'temp1 = rs("text")从数据集中取字段“text”的值

Set temp2 = HMIRuntime.Tags("textdataAuto")
temp2.Read
temp2.Write temp1

conn.close
Set rs = Nothing
Set conn=Nothing 


假设我们须要连接的是access数据库,仅仅须要将

"SERVER=YANG-PCWINCC;uid=sa;pwd=1988525;database=datasavetest"
替换为

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=datasavetest"

原文地址:https://www.cnblogs.com/yjbjingcha/p/6913609.html