wincc用vb脚本写自定义的sql数据库问题

我想用一个按钮的动作脚本连接sql,然后用全局脚本周期性写变量值到sql,然后用另一个按钮动作脚本断开sql连接。这样能用vb脚本实现吗?因为连接sql的脚本里面有个对象... 我想用一个按钮的动作脚本连接sql,然后用全局脚本周期性写变量值到sql,然后用另一个按钮动作脚本断开sql连接。这样能用vb脚本实现吗?
因为连接sql的脚本里面有个对象objConnection,如下代码:
strConnectionString ="Driver={SQL Server};Server=.\WINCC;uid=;pass=;database=guowincc"

Set objConnection = CreateObject("ADODB.Connection")
objConnection.ConnectionString = strConnectionString
objConnection.open

而insert语句需要用到objConnection这个对象:
strSql = "insert into testwincc values('NewTag1_inter','"& nowTime & "',"

& lngValue & ");"
Set objCommand = CreateObject("ADODB.Command")
with objCommand
.ActiveConnection = objConnection
.CommandText = strSql
End With
objCommand.Execute

然后断开连接也要用到objConnection对象:
Set objCommand = Nothing
objConnection.Close
Set objConnection = Nothing

但是全局脚本就没有参数传递,这要怎么办呢?
我是想在用全局脚本写sql的时候不要它老是连接——写——断开,连接——写——断开....
我只想用这样的顺序:连接——写...写...写...——断开
请问一下,wincc 里的内部变量有Script和 TagLoggingRt,这两个有什么区别啊?
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
dcount10
2009-05-23 · TA获得超过301个赞
知道小有建树答主
回答量:294
采纳率:0%
帮助的人:404万
展开全部
WinCC的VBS虽可以生命Public变量,但作用域仅限于本画面。
如果你的WinCC版本>=V6.0 SP3,则可以使用Dataset对象,该对象可以在不同的VBS脚本中进行访问。下面是个简单的例子:
1、连接
Dim objConnection,strConnectionString
strConnectionString ="Driver={SQL Server};Server=.\WINCC;uid=;pass=;database=guowincc"

Set objConnection = CreateObject("ADODB.Connection")
objConnection.ConnectionString = strConnectionString
objConnection.open

HMIRuntime.DataSet.Add "objConnection",objConnection

2、全局动作中引用
Dim objConnection
objConnection= HMIRuntime.DataSet("objConnection").Value
with objCommand
.ActiveConnection = objConnection
xxxxxxxx

3、关闭连接:
Dim objConnection
objConnection= HMIRuntime.DataSet("objConnection").Value
objConnection.Close
Set objConnection = Nothing
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式