抖音粉丝群1
『7x24小时有问必答』

主要内容:
1、MDAC
2、Microsoft.Jet.OLEDB.4.0
3、VBScript脚本

测试环境:
WinCC  Professional v16 update2

本文介绍WINCC VBS脚本使用ADO通过OLE DB来访问Access数据库,Provider使用Microsoft Jet引擎提供的Microsoft.Jet.OLEDB.4.0。

1
  MDAC

1.png
如上所示:
ADO(ActiveX Data Objects)是一个用于访问数据源的COM组件,作为高层的编程界面层在OLE DB之上,包含了很多层次化的COM对象(Object)与集合(Collection)。而OLE DB则是基于COM,供C/C++访问与提供资料的接口,ODBC则是统一化的资料访问API。它们都是微软数据访问组件(MDAC)的一部分。

ADO它向上提供数个对象类别供应用程序调用,向下则是调用OLE DB所提供的接口,因此数据库必须要有OLE DB Provider,才可以由ADO调用。可以说ADO是在VBScript上唯一的资料访问管道。

2
  Microsoft.Jet.OLEDB.4.0

Jet 4.0引擎会随系统一起安装,包括了ODBC 驱动程序和OLE DB 提供者,其msjetoledb40.dll(32位) 文件32位系统在system32目录下,64位系统在SysWOW64目录下,访问Excel还依赖于其中的MSEXCL40.DLL。

使用ADO建立与数据库的连接,其中最重要的参数是连接字符串(ConnectionString)。连接字符串包含所有访问数据库的必须信息。

OLE DB Provider:
Provider=Microsoft.Jet.OLEDB.4.0

3
  VBScript脚本

读取如下accessdbdemo.mdb文件中  tag  表中 tag1value  字段的内容并输出
2.jpeg

示例脚本:
Dim oConnDim oRsDim oCom

Set oConn = CreateObject("ADODB.Connection")oConn.ConnectionString ="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Users\liubing\Documents\accessdbdemo.mdb;"oConn.OpenSet oRs=CreateObject("ADODB.Recordset")Set oCom=CreateObject("ADODB.Command")Set oCom.ActiveConnection=oConnoCom.CommandText="Select tag1value from tag"Set oRs=oCom.Execute

If (oRs.Fields.Count>0) ThenoRs.MoveFirstDo While Not oRs.EOFHMIRuntime.Trace oRs.Fields(0).Value & vbCrLfoRs.MoveNextLoopElseEnd If

oRs.CloseSet oRs=NothingoConn.CloseSet oConn=Nothing

最后分享一个网站,其中提供了各种OLE DB Provider的 ConnectionString的格式示例。
https://www.connectionstrings.com/

- - -  正   文 - - -  - - - 结   束 - - -

---

如果你有与本文相关问题可以后台发消息,欢迎点分享、收藏、点赞、在看

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码