回复:wincc实时读取第三方SQL数据库

金华山

  • 帖子

    73
  • 精华

    10
  • 被关注

    22

论坛等级:侠士

注册时间:2006-07-30

普通 普通 如何晋级?

发布于 2017-08-11 10:02:25

3楼

 

步骤、示例 2

创建名称为 dbValue 的 WinCC 变量。

使用 WINCC_DATA 表和 ID,TagValue 列创建 Access 数据库: ID,创建 TagValue(ID 作用自动值)。

设置名称为“SampleDSN”的 ODBC 数据源,引用以上 Access 数据库。

编程。

   

示例 2

 

 

'VBS108a

Dim objConnection

Dim objCommand

Dim objRecordset

Dim strConnectionString

Dim strSQL

Dim lngValue

Dim lngCount

strConnectionString = "Provider=MSDASQL;DSN=SampleDSN;UID=;PWD=;"

strSQL = "select TagValue from WINCC_DATA where ID = 1"

Set objConnection = CreateObject("ADODB.Connection")

objConnection.ConnectionString = strConnectionString

objConnection.Open

Set objRecordset = CreateObject("ADODB.Recordset")

Set objCommand = CreateObject("ADODB.Command")

objCommand.ActiveConnection = objConnection

objCommand.CommandText = strSQL

Set objRecordset = objCommand.Execute

lngCount = objRecordset.Fields.Count

If (lngCount>0) Then

objRecordset.movefirst

lngValue = objRecordset.Fields(0).Value

HMIRuntime.Tags("dbValue").Write lngValue

Else

HMIRuntime.Trace "Selection returned no fields" & vbNewLine

End If

Set objCommand = Nothing

objConnection.Close

Set objRecordset = Nothing

Set objConnection = Nothing

   

clipboard

 

根据使用的提供程序不同,有多种方法可用来定义连接的连接字符串。

ODBC 的 Microsoft OLE DB 提供程序

启用与 ODBC 数据源的连接。 相应的语法为:

 

 

 

"[Provider=MSDASQL;]{DSN=name|FileDSN=filename};

[DATABASE=database;]UID=user; PWD=password"

   

clipboard

 

其它 Microsoft OLE DB 提供程序(例如 MS Jet、MS SQL Server)

可以不使用 DSN 运行。 相应的语法为:

 

 

"[Provider=provider;]DRIVER=driver; SERVER=server;

DATABASE=database; UID=user; PWD=password"

   

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC WinCC / Panel

共有32672条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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