如何访问wincc sqlserver数据库

如何访问wincc sqlserver数据库,第1张

用WINCC的C脚本访问他的SQL数据并不合适!因为本来vc++ 和VB对比,vb访问数据库比VC要方便,容易掌握,快捷

最好的方法:采用VB编写SQL访问数据,外挂于WINCC。

访问WINCC SQL,用常规的方法是访问不到的,因为SQL FOR WINCC有独特的访问方式。

WinCC的VBS虽可以声明Public变量,但作用域仅限于本画面,如下:

如果WinCC版本>=V60 SP3,则可以使用Dataset对象,该对象可以在不同的VBS脚本中进行访问,下面是个简单的例子:

1、连接

Dim objConnection,strConnectionString

strConnectionString ="Driver={SQL Server};Server=\WINCC;uid=;pass=;database=guowincc"

Set objConnection = CreateObject("ADODBConnection")

objConnectionConnectionString = strConnectionString

objConnectionopen

HMIRuntimeDataSetAdd "objConnection",objConnection

2、全局动作中引用

Dim objConnection

objConnection= HMIRuntimeDataSet("objConnection")Value

with objCommand

ActiveConnection = objConnection

xxxxxxxx

3、关闭连接:

Dim objConnection

objConnection= HMIRuntimeDataSet("objConnection")Value

objConnectionClose

Set objConnection = Nothing

WInCC 本身就不是用来开发数据库,他本身带有SQL server的数据库,如果你是想把WinCC的归档数据导出到别的数据库,可以使用连通性选件包或工业数据桥,给你两个链接参考:

>

1、建立存储:

CREATE PROCedure[owner]procedurename[;number]

[[(]@parameter_name datatype[=default][OUTput]

[,@parameter_name datatype[=default][OUTput]][)]]

[WITH RECOMPILE]

AS SQL_statements

2、存储规则:

[EXECute][@return-status=]

[[[server]database]owner]procedurename[;number]

[[@parameter_name=]value|[@parameter_name=]@varialbe[OUTput]

[,[@parameter_name=]value|[@parameter_name=]@variable[OUTput]]]

[WITH RECOMPILE]

具体 *** 作修改一下连接字符串和sSql里的命令就可以了

Dim sCon

Dim sSql

Dim oRs

Dim conn

Dim oCom

Dim Con

Dim Data1, Data2, Data3

‘读取wincc变量

Data1=HMIRuntimetags("编号")read

Data2=HMIRuntimetags("姓名")read

Data3=HMIRuntimetags("年龄")read

‘连接数据库

Con="Provider=SQLOLEDB1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=读写数据库;Data Source=\WINCC"

Set conn = CreateObject("ADODBConnection")

connConnectionString = Con

connCursorLocation = 3

connOpen

‘写入数据库

sSql="insert into个人信息VALUES('" & Data1 & "','" & Data2&"','"&Data3&"');"

Set oRs = CreateObject("ADODBRecordset")

Set oCom = CreateObject("ADODBCommand")

Set oComActiveConnection = conn

oComCommandType = 1

oComCommandText = sSql

Set oRs = oComExecute

Set oRs = Nothing

connClose

Set conn = Nothing

安装时是带选项的,请注意选择。

Connectivity Pack提供用来解析WinCC数据库压缩归档的WinCC OLE DB驱动,不用它很难直接从WinCC的数据库中读取归档数据(SQL Server OLE DB无此功能)。

可以使用Dat@Monitor,它可以在Excel和Internet Explorer中以表格和图形的方式显示WinCC的数据库中的数据。

也可以使用Industrial Data Bridge(工业数据桥),它可以将WinCC的数据读写到第三方的数据库(SQL Server 2000/MS Access 2003/Oracle 9i),而后可以用VB/VC/net来访问。

以上就是关于如何访问wincc sqlserver数据库全部的内容,包括:如何访问wincc sqlserver数据库、如何用WINCC里的脚本语言连接微软的数据库、利用WinCC 怎么开发实时数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9535045.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存