资源描述
WinCC V6.2 数据库访问
我们现在的WinCC教材是以WinCC V6.0 SP3为软件平台而开发的,而之后,Siemens又推出了V6.2、V7.0版本的WinCC。目前,BU大力推的是V7.0的WinCC,我们的WinCC教材也准备升级为V7.0版本。但从用户的角度来说,对V7.0版本的WinCC还有一个逐步接受的过程,以后,我们碰到的客户,可能很多还是使用V6.2版本的软件。所以,我们还是有必要熟悉一下WinCC V6.2。本文主要介绍WinCC V6.2的数据库访问,由于WinCC V7.0和WinCC V6.2采用的都是SQL Server 2005数据库,故本文对了解WinCC V7.0的数据库访问也是有帮助的。
(一)若采用WinCC V6.2,原来的教材中有关操作和界面的变化
1. 打开SQL Server管理工具
SQL Server 2005和SQL Server 2000在界面上还是有很大不同的,原来的企业管理器变成了SQL Server Management Studio (SSMS)。
图1. 启动SSMS
2. 选择身份认证方式:
WinCC 系统在SQL Server中注册了自己的账户,如 WinCCAdmin、WinCCConnect等,所以,WinCC使用到了SQL Server的认证方式。外部程序访问数据库时,可以采用Windows 集成的认证方式。
图2. 选择身份认证方式
图3. WinCC在SQL Server中注册的用户
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中编程利用WinCC OLE-DB访问WinCC数据库
方法及程序同原来的教材,原来的教材的程序同样适用。
8. 归档变量设置和归档数据库片段设置和原来版本类似。
(二)有关WinCC V6.2数据库访问的一些背景知识
1. WinCC数据库的变迁:
Sybase Anywhere 7(V6.0之前) -> Microsoft SQL Server 2000(V6.0) -> Microsoft SQL Server 2005(V6.2,V7.0)
2. WinCC V6.2 开始,慢速归档和快速归档都采用了压缩的方式存储在数据库的相应表中(Microsoft SQL Server 2005 之后),访问这些经过压缩的二进制数据块,需要采用独特的 OLE – DB provider ——WinCC OLE-DB provider,而普通的 Microsoft OLE –DB provider 无法读取并解密出WinCC 的归档数据。
3. WinCC和WinCCFlexibel项目各自生成一个实例。所谓的“实例”,就是一个SQL Server数据库引擎。SQL Server支持在同一台计算机上同时运行多个SQL Server数据库引擎实例,每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。各实例的运行是独立的,一个实例的运行不会受其他实例运行的影响,也不会影响其他实例的运行。在一台计算机上安装多个SQL Server实例,就相当于把这台计算机模拟成多个数据库服务器,而且这些模拟的数据库服务器是独立且同时运行的。
4. WinCC归档变量的时间采用通用协调时(UTC, Universal Time Coordinated)时间,滞后北京时间8小时,所以得到归档数据后,时间需要做调整。例如在VB中可以使用 DateAdd函数来进行转换。
5. ODBC是曾经的数据库通信标准;在组件/对象盛行的大趋势下,微软打算用OLE-DB来取代ODBC;ADO是简单的应用程序层面的数据库访问方法, 构建在OLE-DB之上。
ODBC(Open Database Connectivity)是一个数据库访问的标准接口。ODBC能够动态装载各个数据库的CLI,并把对ODBC的调用转换为CLI调用。通过这一标准的接口,开发者就可以不必关心具体的数据库管理系统(DBMS)的实现细节。只要相应类型数据库提供了ODBC驱动程序,就可以同过ODBC来实现对数据库的访问。至此,数据库应用程序就独立于具体的数据库管理系统了。
Microsoft COM技术发展起来以后,微软提出了OLE-DB(Object Linking & Embedding for Database)。OLE-DB是一个COM接口,并且需要每个数据库都提供自己的Provider(也就是类似于CLI的数据库调用方法或驱动)。所以,OLE-DB可以看做COM技术下的数据库访问的API函数。
WinCC选件Connectivity pack不是一个或一组应用程序,而是一组接口,不是面向最终用户,而主要是为WinCC数据库应用开发者提供不同的方法。主要包括了 OLE-DB,OPC XML,OPC HAD和OPC A&E。
Microsoft SQL Server提供了许多Provider,为什么还要选WinCCProvider?原因如下:
A、 只有使用制造商自己的Provider,才能访问加密的或者和SQL不兼容的数据。WinCC的过程值归档数据库就是经过压缩的,只有WinCC OLE-DB才能够解压这些数据。
B、 WinCC运行数据并不是存在一个数据库中,而是分散在多个小数据库当中,使用 WinCC OLE-DB能够透明地访问这些归档数据,而不需要考虑其数据库存储方式的复杂性。
图18. SQL Server本身提供了很多Provider
6. SQL Server 2005是微软推出的综合、集成的数据平台,是一种进行数据管理和数据分析的数据解决方案。与SQL Server 2000最大的区别是,SQL Server 2005超越传统意义上的数据库管理系统,已经发展成为“用于大规模联机事物处理、数据仓库和电子商务应用的数据库和数据分析平台”。
SQL Server 2005 的数据管理和数据分析功能是通过一些的组件来提供的,安装后将集中体现在相应的服务以及管理工具和开发工具中。因此,应该对这些组件和工具有一个大概的了解。
- SQL Server数据库引擎:数据库引擎是SQL Server 2005的核心组件,其基本功能是实现数据的存储、处理和保护,此外还包括复制、全文搜索以及用于管理关系数据和XML数据的工具。
- 分析服务(Analysis Services):分析服务包括用于创建和管理联机分析处理(OLAP)以及数据挖掘应用程序的工具。通过OLAP可以实现对多维、复杂的海量数据进行快速的高级分析;通过数据挖掘可以从海量数据中发现意想不到的“惊人”发现,以供决策支持。
- 报表服务(Reporting Services):报表服务是提供全面报表决策方案的服务器和客户端组件,可用于创建、管理和部署各种类型的报表,包括表格报表、矩阵报表、图形报表以及自由格式报表等。
- 通知服务(Notification Services):通知服务是一个信息发布平台,用于向各连接用户和连接设备发布个性化、及时的信息更新。
- 集成服务(Integration Services):集成服务是对SQL Server 2000数据转换服务(DTS)、数据导入\导出功能的扩充,形成了用于数据移动、复制和转换的图形工具和可编程对象。
- 连接组件:连接组件属于客户端组件,用于实现客户端和服务器之间的通信。此外,还用于DB-library、ODBC和OLE DB的网络库。
- 管理工具和开发工具:为实现对SQL Server的利用和开发,SQL Server 2005提供了两种类型的工具:管理工具和开发工具。
SQL Server 2005包含如下的管理工具:
A.SQL Server Management Studio(SSMS)
SSMS是SQL Server 2005 新增加的组件,它是对SQL Server 2000 查询分析器、企业管理器和分析管理器功能的集成和扩充,形成了用于访问、配置、管理和开发SQL Server的所有组件的集成环境。
B. SQL Server配置管理器
SQL Server配置管理器主要用于为SQL Server服务、服务器协议、客户端协议和客户端别名提供基本配置管理。
此外,SQL Server 2005管理工具还包括SQL Server Profiler、数据库引擎优化顾问等,它们分别用于监视数据库引擎实例或Analysis Services实例和协助创建索引、索引视图和分区的最佳组合。
SQL Server 2005开发工具主要是Business Intelligence Development Studio(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-25 20:02:58
我想用一个按钮的动作脚本连接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,这两个有什么区别啊?提问者: guopei296 - 助理 二级 最佳答案
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 本周:9 本月:12 总数:381 ] [返回上一页] [打 印]
0
好的评价 如果您觉得此文章好,就请您
0%(0) 差的评价 如果您觉得此文章差,就请您
0%(0) 中查找“wincc用vb脚本写自定义的sql数据库问题”更多相关内容
中查找“wincc用vb脚本写自定义的sql数据库问题”更多相关内容
·上一篇文章:vb在一个窗体中调用另一窗体的程序
·下一篇文章:急求vb程序设计答案
文章评论评论内容只代表网友观点,与本站立场无关! 评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论 3、通过活动,使学生养成博览群书的好习惯。
B比率分析法和比较分析法不能测算出各因素的影响程度。√
C采用约当产量比例法,分配原材料费用与分配加工费用所用的完工率都是一致的。X
C采用直接分配法分配辅助生产费用时,应考虑各辅助生产车间之间相互提供产品或劳务的情况。错
C产品的实际生产成本包括废品损失和停工损失。√
C成本报表是对外报告的会计报表。×
C成本分析的首要程序是发现问题、分析原因。×
C成本会计的对象是指成本核算。×
C成本计算的辅助方法一般应与基本方法结合使用而不单独使用。√
C成本计算方法中的最基本的方法是分步法。X
D当车间生产多种产品时,“废品损失”、“停工损失”的借方余额,月末均直接记入该产品的产品成本
中。×
D定额法是为了简化成本计算而采用的一种成本计算方法。×
F“废品损失”账户月末没有余额。√
F废品损失是指在生产过程中发现和入库后发现的不可修复废品的生产成本和可修复废品的修复费用。X
F分步法的一个重要特点是各步骤之间要进行成本结转。(√)
G各月末在产品数量变化不大的产品,可不计算月末在产品成本。错
G工资费用就是成本项目。(×)
G归集在基本生产车间的制造费用最后均应分配计入产品成本中。对
J计算计时工资费用,应以考勤记录中的工作时间记录为依据。(√)
J简化的分批法就是不计算在产品成本的分批法。(×)
J简化分批法是不分批计算在产品成本的方法。对
J加班加点工资既可能是直接计人费用,又可能是间接计人费用。√
J接生产工艺过程的特点,工业企业的生产可分为大量生产、成批生产和单件生产三种,X
K可修复废品是指技术上可以修复使用的废品。错
K可修复废品是指经过修理可以使用,而不管修复费用在经济上是否合算的废品。X
P品种法只适用于大量大批的单步骤生产的企业。×
Q企业的制造费用一定要通过“制造费用”科目核算。X
Q企业职工的医药费、医务部门、职工浴室等部门职工的工资,均应通过“应付工资”科目核算。X
S生产车间耗用的材料,全部计入“直接材料”成本项目。X
S适应生产特点和管理要求,采用适当的成本计算方法,是成本核算的基础工作。(×)
W完工产品费用等于月初在产品费用加本月生产费用减月末在产品费用。对
Y“预提费用”可能出现借方余额,其性质属于资产,实际上是待摊费用。对
Y引起资产和负债同时减少的支出是费用性支出。X
Y以应付票据去偿付购买材料的费用,是成本性支出。X
Y原材料分工序一次投入与原材料在每道工序陆续投入,其完工率的计算方法是完全一致的。X
Y运用连环替代法进行分析,即使随意改变各构成因素的替换顺序,各因素的影响结果加总后仍等于指标的总差异,因此更换各因索替换顺序,不会影响分析的结果。(×)
Z在产品品种规格繁多的情况下,应该采用分类法计算产品成本。对
Z直接生产费用就是直接计人费用。X
Z逐步结转分步法也称为计列半成品分步法。√
A按年度计划分配率分配制造费用,“制造费用”账户月末(可能有月末余额/可能有借方余额/可能有贷方余额/可能无月末余额)。
A按年度计划分配率分配制造费用的方法适用于(季节性生产企业)
15
展开阅读全文