Dim objConnection
Dim strConnectionString
Dim lngValue
Dim strSQL
Dim objCommand
Dim ccvalue
strConnectionString="Provider=MSDASQL;DSN=SampleDSN1;UID=;PWD=;"
lngValue=HMIRuntime.Tags("tag").Read
ccvalue=FormatDateTime(Now(),0)
strSQL="INSERT INTO WINCC_DATA(ID,TagValue)VALUES(""&ccvalue&"",""&lngValue&"");"
Set objConnection=CreateObject("ADODB.Connection")
objConnection.ConnectionString=strConnectionString
objConnection.Open
Set objCommand=CreateObject("ADODB.Command")
With objCommand
.ActiveConnection=objConnection
.CommandText=strSQL
End With
objCommand.Execute
Set objCommand=Nothing
objConnection.Close
Set objConnection=Nothing
End Sub
问题补充:
大家看看这一段有什么问题?
最佳答案
仅就代码而言strSQL有问题,改成如下:
strSQL="INSERT INTO WINCC_DATA (ID,TagValue) VALUES ('"&ccvalue&"',"&lngValue&")"
HMIRuntime.Trace strSQL & vbcrlf
对于DateTime格式的ID,赋值时即ccvalue需要加上''。
最后用Trace诊断一下最终的SQL语句,以便判断故障。
提问者对于答案的评价:
谢谢啦
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc276348.html