访问数据库

Sub OnClick(ByVal Item)  
 Dim sPro 
 Dim sDsn 
 Dim sSer 
 Dim sCon 
 Dim sSql 
 Dim conn 
 Dim oRs 
 Dim oCom 
 Dim oItem 
 Dim m,n,s

 
 sPro="Provider=WinCCOLEDBProvider.1;"
 sDsn="Catalog=CC_DemoV6_08_05_19_10_18_29R;"
 sSer="Data Source=.\WinCC"
 sCon=sPro+sDsn+sSer
 sSql="TAG:R,''PVArchive1\Tag1'',''0000-00-00 00:10:00.000'',''0000-00-00 00:00:00.000''"
 ''sSql="TAG:R,1,''0000-00-00 00:10:00.000'',''0000-00-00 00:00:00.000''"

 MsgBox"Open with:"&vbCr&sCon&vbCr&sSql&vbCr

 
 Set conn=CreateObject("ADODB.Connection")
 conn.ConnectionString=sCon
 conn.CursorLocation=3
 conn.Open

 
 Set oRs=CreateObject("ADODB.Recordset")
 Set oCom=CreateObject("ADODB.Command")
 oCom.CommandType=1
 Set oCom.ActiveConnection=conn
 oCom.CommandText=sSql

 
 Set oRs=oCom.Execute
 m=oRs.RecordCount

 
 ListView1.ColumHeaders.Clear
 ListView1.ColumHeaders.Add,,CStr(oRs.Fields(1).name),140
 ListView1.ColumHeaders.Add,,CStr(oRs.Fields(2).name),70
 ListView1.ColumHeaders.Add,,CStr(oRs.Fields(3).name),70
 If(m>0) Then
 oRs.MoveFirst
 n=0
 Do While Not oRs.EOF
 n=n+1
 s=Left(CStr(oRs.Fields(1).Value),23)
 Set oItem=ListView1.ListItems.Add()
 oItem.Text=Left(CStr(oRs.Fields(1).Value),23)
 oItem.SubItems(1)=FormatNumber(oRs.Fields(2).Value,4)
 oItem.SubItems(2)=Hex(oRs.Fields(3).Value)
 If(n>1000) Then Exit Do
 oRs.MoveNext
 Loop
 oRs.Close
 Else
 End If
 Set oRs=Nothing
 conn.Close
 Set conn=Nothing
 End Sub
 这是深入浅出的的一段OLE-DB访问数据库的脚本程序(部分修改),可是为什么我在测试时,在点击按钮后只弹出对话框,而我的Listview无数据显示,时间部分我试过了用绝对时间根据现系统时间:2008-07-02 09-12-50  2008-07-02 10-12-50,可还是不行啊,点击对话框后还是无显示

问题补充:
sSql=" TAG:R,''PVArchive1\Tag1'',''0000-00-00 00:10:00.000'',''0000-00-00 00:00:00.000'' "这个没问题啊,双引号可能是我复制时造成的

最佳答案

VBS脚本问题最多,他边解释边执行,有时候程序执行1半就没有下文了。要是脚本里边有汉字更是老火。建议你设置几个测试点。比如
 我就是人为写一些类似MsgBox "1",,"Message"的弹出消息放在程序中 这样就可以看到程序到底执行到什么地方出了问题。一点一点的排除 最后就会锁定到某一句 呵呵。

提问者对于答案的评价:

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc276856.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 下午12:44
下一篇 2019年6月11日 下午12:44

相关推荐

  • wincc 报表打印机设置

    现想把wincc报表打印出来,同时生成图片,打印机选项里面除了standard printer ;还有microsoft xps docum…

    SIMATIC WinCC 2019年6月10日
  • 如何让趋势曲线改变颜色

    创建了趋势曲线,想让它达到一定值时改变颜色,主要是想起到一个报警的作用。比如量程是150,原来是黑色,达到90时变黄色,达到105时变红色 问题补充:我看到别人做到过,当温度达到设…

    SIMATIC WinCC 2019年6月11日
  • 需要Mapper.zip

    我想要将wincc集成到STEP7中,发现安装时没有选择自定义安装,网站上查找需要Mapper.zip既OS V7.0,请哪位好心人发给我一份吧。先谢谢了。邮箱号:ext…

    SIMATIC WinCC 2019年6月11日
  • 图形动态化

    在WINCC库中调用了皮带,如何使变量为真时,使皮带运转起来? 最佳答案 WinCC本来就是工控软件,不是Flash软件。所以本人不赞成用多幅画面交替实现动化功能。因为周期性触发和…

    SIMATIC WinCC 2019年6月11日
  • Wincc 里需要设置按钮单击后延迟5秒后再切换画面

    Wincc 里需要设置按钮单击后延迟5秒后再切换画面如何操作? 钻石用户推荐最佳答案 可以用VB脚本做延迟Dim scrivarSet scrivar…

    SIMATIC WinCC 2021年7月5日
  • s7-200与wincc7.0用KEPseverEX 的通讯问题

    本人做一项目,软件是s7-200与wincc7.0,用CP243-1以太网通讯,想通过KEPseverEX 来通讯,但是一直没通讯成功,在此高分求教!最好要有详细说明 问…

    SIMATIC WinCC 2019年6月11日
  • wincc 背景模板

    wincc 有没有背景模板,用来给每个页面的共同部分调用的?如果没有背景模板的话,每个页面都要新作一个即时报警窗口,会不会影响wincc的运行性能 最佳答案 wincc不…

    SIMATIC WinCC 2019年6月11日
  • wincc 连接Access数据库操作

    最近想用wincc连接Access数据库来操作,在全局脚本中编写VBS动作,语法检测提示无效字符,脚本是没问题的,不知道是哪里出现了问题,本人刚接触Wincc不久,使用的是Winc…

    2021年7月5日
  • WINCC V7.4资料

    本人第一次接触WINCC,哪位有资料的帮忙发点,谢谢 最佳答案 WinCC V7.4:使用 WinCChttps://support.industry.siem…

    2021年7月5日
  • wincc 7.3.跟仿真器连接不上!

    s7 v5.5程序仿真可以监控了,但是wincc跟仿真器没通讯? 问题补充:tcp/ip都有了 图片说明:       &nbsp…

    2017年6月3日