WinCC数据库SQL访问.docx

上传人:b****7 文档编号:10259431 上传时间:2023-02-09 格式:DOCX 页数:16 大小:784.76KB
下载 相关 举报
WinCC数据库SQL访问.docx_第1页
第1页 / 共16页
WinCC数据库SQL访问.docx_第2页
第2页 / 共16页
WinCC数据库SQL访问.docx_第3页
第3页 / 共16页
WinCC数据库SQL访问.docx_第4页
第4页 / 共16页
WinCC数据库SQL访问.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

WinCC数据库SQL访问.docx

《WinCC数据库SQL访问.docx》由会员分享,可在线阅读,更多相关《WinCC数据库SQL访问.docx(16页珍藏版)》请在冰豆网上搜索。

WinCC数据库SQL访问.docx

WinCC数据库SQL访问

WinCCV6、2数据库访问

我们现在的WinCC教材就是以WinCCV6、0SP3为软件平台而开发的,而之后,Siemens又推出了V6、2、V7、0版本的WinCC。

目前,BU大力推的就是V7、0的WinCC,我们的WinCC教材也准备升级为V7、0版本。

但从用户的角度来说,对V7、0版本的WinCC还有一个逐步接受的过程,以后,我们碰到的客户,可能很多还就是使用V6、2版本的软件。

所以,我们还就是有必要熟悉一下WinCCV6、2。

本文主要介绍WinCCV6、2的数据库访问,由于WinCCV7、0与WinCCV6、2采用的都就是SQLServer2005数据库,故本文对了解WinCCV7、0的数据库访问也就是有帮助的。

(一)若采用WinCCV6、2,原来的教材中有关操作与界面的变化

1、打开SQLServer管理工具

SQLServer2005与SQLServer2000在界面上还就是有很大不同的,原来的企业管理器变成了SQLServerManagementStudio(SSMS)。

图1、启动SSMS

2、选择身份认证方式:

WinCC系统在SQLServer中注册了自己的账户,如WinCCAdmin、WinCCConnect等,所以,WinCC使用到了SQLServer的认证方式。

外部程序访问数据库时,可以采用Windows集成的认证方式。

图2、选择身份认证方式

图3、WinCC在SQLServer中注册的用户

3、查瞧ValueID与ValueName的对应关系

图4、查瞧ValueID与ValueName的对应关系

4、查瞧组态的消息

图5、查瞧组态的消息

5、查瞧归档片段的消息

图6、查瞧归档片段的消息

6、数据传输服务

图7、选择数据导出服务

图8、选择数据源(与原来的DTS类似)

图9、设置数据源

图10、选择目标地

图11、选择查询并传输

图12、输入查询语句

图13、源与目标列的对应关系

图14、选择立刻执行传输

图15、传输执行前的提示

图16、传输执行结果报告

图17、查瞧传输结果

7、在Excel中编程利用WinCCOLE-DB访问WinCC数据库

方法及程序同原来的教材,原来的教材的程序同样适用。

8.归档变量设置与归档数据库片段设置与原来版本类似。

(二)有关WinCCV6、2数据库访问的一些背景知识

1、WinCC数据库的变迁:

SybaseAnywhere7(V6、0之前)->MicrosoftSQLServer2000(V6、0)->MicrosoftSQLServer2005(V6、2,V7、0)

2、WinCCV6、2开始,慢速归档与快速归档都采用了压缩的方式存储在数据库的相应表中(MicrosoftSQLServer2005之后),访问这些经过压缩的二进制数据块,需要采用独特的OLE–DBprovider——WinCCOLE-DBprovider,而普通的MicrosoftOLE–DBprovider无法读取并解密出WinCC的归档数据。

3、WinCC与WinCCFlexibel项目各自生成一个实例。

所谓的“实例”,就就是一个SQLServer数据库引擎。

SQLServer支持在同一台计算机上同时运行多个SQLServer数据库引擎实例,每个SQLServer数据库引擎实例各有一套不为其她实例共享的系统及用户数据库。

各实例的运行就是独立的,一个实例的运行不会受其她实例运行的影响,也不会影响其她实例的运行。

在一台计算机上安装多个SQLServer实例,就相当于把这台计算机模拟成多个数据库服务器,而且这些模拟的数据库服务器就是独立且同时运行的。

4、WinCC归档变量的时间采用通用协调时(UTC,UniversalTimeCoordinated)时间,滞后北京时间8小时,所以得到归档数据后,时间需要做调整。

例如在VB中可以使用DateAdd函数来进行转换。

5、ODBC就是曾经的数据库通信标准;在组件/对象盛行的大趋势下,微软打算用OLE-DB来取代ODBC;ADO就是简单的应用程序层面的数据库访问方法,构建在OLE-DB之上。

ODBC(OpenDatabaseConnectivity)就是一个数据库访问的标准接口。

ODBC能够动态装载各个数据库的CLI,并把对ODBC的调用转换为CLI调用。

通过这一标准的接口,开发者就可以不必关心具体的数据库管理系统(DBMS)的实现细节。

只要相应类型数据库提供了ODBC驱动程序,就可以同过ODBC来实现对数据库的访问。

至此,数据库应用程序就独立于具体的数据库管理系统了。

MicrosoftCOM技术发展起来以后,微软提出了OLE-DB(ObjectLinking&EmbeddingforDatabase)。

OLE-DB就是一个COM接口,并且需要每个数据库都提供自己的Provider(也就就是类似于CLI的数据库调用方法或驱动)。

所以,OLE-DB可以瞧做COM技术下的数据库访问的API函数。

WinCC选件Connectivitypack不就是一个或一组应用程序,而就是一组接口,不就是面向最终用户,而主要就是为WinCC数据库应用开发者提供不同的方法。

主要包括了OLE-DB,OPCXML,OPCHAD与OPCA&E。

MicrosoftSQLServer提供了许多Provider,为什么还要选WinCCProvider?

原因如下:

A、只有使用制造商自己的Provider,才能访问加密的或者与SQL不兼容的数据。

WinCC的过程值归档数据库就就是经过压缩的,只有WinCCOLE-DB才能够解压这些数据。

B、WinCC运行数据并不就是存在一个数据库中,而就是分散在多个小数据库当中,使用WinCCOLE-DB能够透明地访问这些归档数据,而不需要考虑其数据库存储方式的复杂性。

图18、SQLServer本身提供了很多Provider

6、SQLServer2005就是微软推出的综合、集成的数据平台,就是一种进行数据管理与数据分析的数据解决方案。

与SQLServer2000最大的区别就是,SQLServer2005超越传统意义上的数据库管理系统,已经发展成为“用于大规模联机事物处理、数据仓库与电子商务应用的数据库与数据分析平台”。

SQLServer2005的数据管理与数据分析功能就是通过一些的组件来提供的,安装后将集中体现在相应的服务以及管理工具与开发工具中。

因此,应该对这些组件与工具有一个大概的了解。

-SQLServer数据库引擎:

数据库引擎就是SQLServer2005的核心组件,其基本功能就是实现数据的存储、处理与保护,此外还包括复制、全文搜索以及用于管理关系数据与XML数据的工具。

-分析服务(AnalysisServices):

分析服务包括用于创建与管理联机分析处理(OLAP)以及数据挖掘应用程序的工具。

通过OLAP可以实现对多维、复杂的海量数据进行快速的高级分析;通过数据挖掘可以从海量数据中发现意想不到的“惊人”发现,以供决策支持。

-报表服务(ReportingServices):

报表服务就是提供全面报表决策方案的服务器与客户端组件,可用于创建、管理与部署各种类型的报表,包括表格报表、矩阵报表、图形报表以及自由格式报表等。

-通知服务(NotificationServices):

通知服务就是一个信息发布平台,用于向各连接用户与连接设备发布个性化、及时的信息更新。

-集成服务(IntegrationServices):

集成服务就是对SQLServer2000数据转换服务(DTS)、数据导入\导出功能的扩充,形成了用于数据移动、复制与转换的图形工具与可编程对象。

-连接组件:

连接组件属于客户端组件,用于实现客户端与服务器之间的通信。

此外,还用于DB-library、ODBC与OLEDB的网络库。

-管理工具与开发工具:

为实现对SQLServer的利用与开发,SQLServer2005提供了两种类型的工具:

管理工具与开发工具。

SQLServer2005包含如下的管理工具:

A.SQLServerManagementStudio(SSMS)

SSMS就是SQLServer2005新增加的组件,它就是对SQLServer2000查询分析器、企业管理器与分析管理器功能的集成与扩充,形成了用于访问、配置、管理与开发SQLServer的所有组件的集成环境。

B、SQLServer配置管理器

SQLServer配置管理器主要用于为SQLServer服务、服务器协议、客户端协议与客户端别名提供基本配置管理。

此外,SQLServer2005管理工具还包括SQLServerProfiler、数据库引擎优化顾问等,它们分别用于监视数据库引擎实例或AnalysisServices实例与协助创建索引、索引视图与分区的最佳组合。

SQLServer2005开发工具主要就是BusinessIntelligenceDevelopmentStudio(BIDS),它们就是分析服务、报表服务与集成服务解决方案的集成开发环境。

7、关于SQL数据库,它就是由数据库文件(Database File)与事务日志文件(Transaction Log File)组成的。

两者密不可分,所以在做数据备份时,都要同时选择备份:

 -扩展名、ldf就是SQL数据库的事务处理记录日志文件(SQL Server Database Transaction Log File),用于记录SQL数据库所有事务,以及每个事务对数据库所做的修改与更新情况的文件,包含恢复数据库中的所有事务所需的记录信息。

事务日志就是SQL数据库的一个重要组件,如果系统出现故障,它将成为最新数据的唯一来源。

所以,事务日志文件及其重要。

 -扩展名、mdf就是SQL数据库的主数据记录文件(SQL Server Database Primary Data File),用于存储SQL数据库的启动信息与部分或全部数据。

VB编程wincc用vb脚本写自定义的sql数据库问题减小字体增大字体作者:

佚名来源:

本站整理发布时间:

2009-05-2520:

02:

58

我想用一个按钮的动作脚本连接sql,然后用全局脚本周期性写变量值到sql,然后用另一个按钮动作脚本断开sql连接。

这样能用vb脚本实现不?

因为连接sql的脚本里面有个对象objConnection,如下代码:

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

SetobjConnection=CreateObject("ADODB、Connection")

objConnection、ConnectionString=strConnectionString

objConnection、open

而insert语句需要用到objConnection这个对象:

strSql="insertintotestwinccvalues('NewTag1_inter','"&nowTime&"',"

&lngValue&");"

SetobjCommand=CreateObject("ADODB、Command")

withobjCommand

、ActiveConnection=objConnection

、CommandText=strSql

EndWith

objCommand、Execute

然后断开连接也要用到objConnection对象:

SetobjCommand=Nothing

objConnection、Close

SetobjConnection=Nothing

但就是全局脚本就没有参数传递,这要怎么办呢?

我就是想在用全局脚本写sql的时候不要它老就是连接——写——断开,连接——写——断开、、、、

我只想用这样的顺序:

连接——写、、、写、、、写、、、——断开问题补充:

请问一下,wincc里的内部变量有Script与TagLoggingRt,这两个有什么区别啊?

提问者:

guopei296-助理二级最佳答案

WinCC的VBS虽可以生命Public变量,但作用域仅限于本画面。

如果您的WinCC版本>=V6、0SP3,则可以使用Dataset对象,该对象可以在不同的VBS脚本中进行访问。

下面就是个简单的例子:

1、连接

DimobjConnection,strConnectionString

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

SetobjConnection=CreateObject("ADODB、Connection")

objConnection、ConnectionString=strConnectionString

objConnection、open

HMIRuntime、DataSet、Add"objConnection",objConnection

2、全局动作中引用

DimobjConnection

objConnection=HMIRuntime、DataSet("objConnection")、Value

withobjCommand

、ActiveConnection=objConnection

xxxxxxxx

3、关闭连接:

DimobjConnection

objConnection=HMIRuntime、DataSet("objConnection")、Value

objConnection、Close

SetobjConnection=Nothing

[本日:

1本周:

9本月:

12总数:

381][返回上一页][打印]

0

好的评价 如果您觉得此文章好,就请您

0%(0)差的评价 如果您觉得此文章差,就请您

0%(0)中查找“wincc用vb脚本写自定义的sql数据库问题”更多相关内容

中查找“wincc用vb脚本写自定义的sql数据库问题”更多相关内容

·上一篇文章:

vb在一个窗体中调用另一窗体的程序

·下一篇文章:

急求vb程序设计答案

文章评论评论内容只代表网友观点,与本站立场无关!

评论摘要(共0条,得分0分,平均0分)查瞧完整评论

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1