关于WinCC与数据库的问题

现在需要在一个脚本中同时用到yodata和insert两个函数,具体应该怎么用请高手指点一下
 Dim objConnection
 Dim strConnectionString
 Dim strSQL
 Dim strSQL1
 Dim objCommand
 Dim a,b,c,d,e,f,g
 strConnectionString="Provider=MSDASQL;DSN=SampleDSN1;UID=;PWD=;"
 a=HMIRuntime.Tags("ID").Read
 b=HMIRuntime.Tags("DH").Read
 c=HMIRuntime.Tags("Rank").Read
 d=HMIRuntime.Tags("VA").Read
 e=HMIRuntime.Tags("CO").Read
 f=FormatDateTime(Now(),0)
 strSQL1="UPDATE WinCC_DATA SET CH='"&b&"',Rank="&c&",CO='"&e&"',VA='"&d&"',CC='"&f&"' WHERE ID="&a&"" 
 MsgBox"0"
 strSQL="INSERT INTO WINCC_DATA1(ID,CH,Rank,VA,CO,DA)VALUES("&a&",'"&b&"',"&c&",'"&d&"','"&e&"','"&f&"');"

 
 MsgBox"1"
 Set objConnection=CreateObject("ADODB.Connection")
 objConnection.ConnectionString=strConnectionString
 objConnection.Open
 Set objCommand=CreateObject("ADODB.Command")
 MsgBox"a"
 With objCommand
  .ActiveConnection=objConnection
  
  .CommandText=strSQL 'strSQL1
  
 End With
 objCommand.Execute
 Set objCommand=Nothing
 objConnection.Close
 Set objConnection=Nothing
 End Sub
 关键是.CommandText=strSQL 'strSQL1
 这句话应该怎么写。

最佳答案

Update和Insert肯定不是同时执行的吧,分开就可以了。
 两段同样地代码,
 Update用 .CommandText=strSQL1
 Insert用 .CommandText=strSQL即可。

提问者对于答案的评价:
我已经实现了,加了一个do循环,不过还是谢谢你

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc276253.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 下午12:15
下一篇 2019年6月11日 下午12:15

相关推荐

  • WINCC的图库元件不能翻转

    在WINCC的画面上放置西门子图库里的元件,例如阀门,罐体等,但是不能翻转90°,就是说,选中了一个元件,点击画面上方的“旋转”图标,阀门不变动。请问这是怎么回事? 最佳答案 你这…

    SIMATIC WinCC 2019年6月11日
  • wincc GSC诊断结果,看不懂,请指点

    想对画面中的趋势控件写入变量,但无法实现,添加GSC诊断窗口,出现以下提示信息,不明白是什么意思,还请大神们帮忙看下,谢谢 图片说明:    最佳答案 画面名称…

    2020年11月1日
  • wincc flexible程序可以做U盘里吗

    wincc flexible程序可以打包到U盘使用U盘下载吗  可以的话如何操作 最佳答案 Wincc flexible Smar…

    SIMATIC WinCC 2020年11月1日
  • 触摸屏MP277实现历史报警记录

    PLC触发一个报警位,能否直接在触摸屏MP277实现历史报警记录, 最佳答案 可以!1.要外置的存储卡;2.在归档记录和报警记录分别组态就行。切记报警归档里,报警是用字来传递的。就…

    SIMATIC WinCC 2018年12月2日
  • wicc s7 suite 驱动 中的TCP/IP 可否实现 冗余通讯

    PLC机架配置两块 CP 以太网通讯卡(同子网或不同子网段)wincc  是否可以实现与这两块通讯卡的冗余通讯 最佳答案 请参考总之,S7-…

    SIMATIC WinCC 2021年7月5日
  • 时间显示

    我在程序里做了个时间继电器,10分钟延时。我想在wincc里显示它。比如显示从10:10到00:00显示。如何实现。谢谢 最佳答案 你可用两个计数器完成它,一个是秒计数,一个是分钟…

    SIMATIC WinCC 2019年6月11日
  • wincc5.1 乱码问题

    情况:外国人做的组态,当时用的wincc5.1.我现在需要升级为7.0并且优化组态。但是我在win2000下安装wincc5.1后,打开其组态程序,发现有一部分的组态的“文字”(例…

    SIMATIC WinCC 2017年11月1日
  • WINCC用布局通过ODBC读取ACCESS做报表问题111

    1、数据已存入ACCESS,如图1.2、布局已连接ACCESS源,SQL,连接变量SQLACCESS。问题:连接成功并且可以读取,但只能读一列。3、全部读取,结果如图2.Dim&n…

    2017年6月6日
  • intouch冗余

    安装有INTOUCH的两台工控机做服务器(2台服务器是冗余的),与西门子400PLC通讯。现在一台工控机硬盘坏了,换了个硬盘。1.我安装WIN2000,INTOUCH,SIMATI…

    SIMATIC WinCC 2017年12月9日
  • wincc管道液体流动画面

     wincc管道液体流动画面,当泵、或者阀门为“1”时,触发管道启动液体流动,在找答案里搜到的答案是用:管道流动控件、VBS来实现,除了这俩个而外还有没有更好的方法。 至…

    SIMATIC WinCC 2021年7月5日