注意事项,wincc如果是32位软件系统需要去c盘找到C:\Windows\SysWOW64\odbcad32.exe配置mysql数据源,并测试,避免使用64位的ODBC数据源,不然会一直调试不同,连接不上,其他内容基本上跟网上内容差不多,
Option Explicit
Function action
'定义变量
Dim adoConn '定义ADO连接对象
Dim ConnectionStr '定义数据库连接字符串
'ConnectionStr="DSN=mysql;SERVER=localhost;UID=root;PWD=root;DATABASE=test;PORT=3306"
'"driver={mysql odbc 5.1 driver};server=192.168.1.111;database=xifeijian;port=3306;uid=root;password=root"
ConnectionStr="Provider=MSDASQL.1;Persist Security Info=True;Extended Properties='DRIVER=MySQL ODBC 5.3 Unicode Driver;SERVER=localhost;UID=root;PWD=root;DATABASE=test;PORT=3306'"
'声明连接对象
Set adoConn=CreateObject("ADODB.Connection")
'声明查询对象
'Set Rst =CreateObject("ADODB.Recordset")
'Msgbox adoConn.State
'Msgbox ConnectionStr
'利用数据库连接字符串打开数据库
On Error Resume Next
adoConn.Open ConnectionStr
'查看是否连接成功,成功状态值为1
'msgbox adoConn.state
If adoConn.State = 0 Then
Msgbox "连接数据库失败!"
End If
'Dim sqlStrc,adoRst
'获取数据库查询语句
'sqlStr = "select * from utest where id=1 "
'执行sql语句并返回对应的结果集
'Set adoRst = adoConn.Execute(sqlStr)
'获得结果集中年龄字段的值
'MsgBox adoRst.Fields.Item("ub").Value
'关闭数据库
'adoConn.Close
'释放数据库对象
'Set adoConn = Nothing
'wincc中的变量名
Dim NewTag_1,NewTag_2
Dim sqlStr
Set NewTag_1 = HMIRuntime.Tags("PY7_VF216_Fre")
Set NewTag_2 = HMIRuntime.Tags("PY7_VF216_Ia1")
' sqlStr="insert into utest (ua,ub) values('345','345')"
sqlStr="insert into utest (ua,ub) values('"&NewTag_1.Read&"','"&NewTag_2.Read&"')"
adoConn.Execute sqlStr
adoConn.close
Set adoConn=Nothing
End Function