第一次接触WINCC中的数据库,求助。在WINCC中用VBS脚本向SQL数据库循环写数据

已锁定

蒙子

  • 帖子

    17
  • 精华

    0
  • 被关注

    2

论坛等级:游民

注册时间:2008-09-20

普通 普通 如何晋级?

第一次接触WINCC中的数据库,求助。在WINCC中用VBS脚本向SQL数据库循环写数据

2623

11

2008-11-07 17:47:05

在WINCC中用VBS脚本向SQL数据库循环写数据
按钮脚本如下
Dim DM
Dim SDZL,SJZL
Dim database,server,uid,pwd
Dim stren,cn,is_sql

database="PL"
server="PC\WINCC"
uid="sa"
pwd="123"

stren="provider = SQLOLEDB.1;DRIVER = SQL SERVER;SERVER="&SERVER&_
";DATABASE="&DATABASE&";UID="&uid&";pwd="&pwd

Set cn = CreateObject("adodb.connection")
cn.connectionstring = stren
cn.open

Dim i
For i=0 To 12
Dim field1,field2,field3

field1="T1_" & i
field2="T2_" & i
field3="T3_" & i

Set DM=HMIRuntime.Tags ("field1")
DM.READ
Set SDZL=HMIRuntime.Tags ("field2")
SDZL.READ
Set SJZL=HMIRuntime.Tags ("field3")
SJZL.READ

is_sql="insert into ONE(DM,SDZL,SJZL) values("&DM.value&","&SDZL.value&","&SJZL.value&")"

cn.execute(is_sql)
Next
cn.close

数据库为PL,表名为ONE,其中DM字段为VARCHAR 50,SDZL和SJZL为数字型。
其中WINCC中有T1_1到T1_12,T2_1到T2_12,T3_1和T3_12共计36个变量,我想用FOR NEXT来循环执行SQL的INSETT语句。不知道我上面写的代码对否?
我在WINCC中用一个按钮来执行操作。
每次我运行的时候,都提示如下:

Line : 1
Error: Line 1: incorrect syntax near ‘,’

是第一行出现错误,可什么错误呢?

我试验把循环语句去掉,只单独读出WINCC中的T1_1,T2_1,T3_1三个变量,然后写入数据库的ONE表中,成功。

我做这个循环的目的就是不想把36个变量挨个列出来,用循环执行12次完成功能。

请各位大虾帮忙。
第一次接触WINCC中的数据库,求助。在WINCC中用VBS脚本向SQL数据库循环写数据 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32569条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。