wincc对SQLserver数据库操作

请问哪位大侠有wincc对SQLserver数据库操作的 已做好例子,请发我邮箱谢谢wzw2008_80@126.com

最佳答案

给你一段代码供你参考,代码参考自深入浅出西门子wincc和技术论坛,简单修改就可i在wincc里用,vb测试通过.
 Dim sPro
 Dim sDsn
 Dim sSer
 Dim sCon

 Dim sSql

 Dim oRs

 Dim conn

 Dim oCom

 Dim oItem

 Dim m, n, s

 Dim hourdate

 Dim secdate

 Dim k

 

 ''定义变量,VBS使用变体类型,无需指定数据类型,否则编译出错

 ''Set listview1 = ScreenItems("listview1") ''使用Listview控件

 ListView1.View = 3
 ListView1.ListItems.Clear

 ''//定义控件属性

 sPro = "Provider=WinCCOLEDBProvider.1;" ''//定义服务提供者

 sDsn = "Catalog=CC_lyf_07_12_30_09_17_21R;"

 sSer = "Data Source=.\WinCC"

 sCon = sPro + sDsn + sSer

 ''//定义连接字符串

 sSql = "TAG:R,''ProcessvalueArchive\NewTag'',''2008-1-9 5:19:20.000'',''2008-1-9 5:22:00.999''"

                
 ''//访问压缩归档的SQL语句,非压缩归档使用SELECT语句,用法见SQL

 ''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

 ''//标准的ADO访问,下面是输出到Listview的代码

 m = oRs.RecordCount
 Text1.Text = m
 Text2.Text = oRs.Fields(3).ActualSize & "-" & oRs.Fields(3)
 With ListView1

 .ColumnHeaders.Clear

 .ColumnHeaders.Add , , CStr(oRs.Fields(1).Name), 780

 .ColumnHeaders.Add , , CStr(oRs.Fields(2).Name), 900

 .ColumnHeaders.Add , , CStr(oRs.Fields(3).Name), 1050

 .ColumnHeaders.Add , , CStr(oRs.Fields(4).Name), 1200

 

 End With

 If (m > 0) Then

 oRs.MoveFirst

 n = 0

 Do While Not oRs.EOF

 n = n + 1

 ''s = Left(CStr(oRs.Fields(1).value), 23)

 s = CDate(oRs.Fields(1).Value)

 k = DateAdd("h", 8, s)

 Set oItem = ListView1.ListItems.Add()

 oItem.Text = k

 oItem.SubItems(1) = FormatNumber(oRs.Fields(2).Value, 1)

 oItem.SubItems(2) = Hex(oRs.Fields(3).Value)

 oItem.SubItems(3) = FormatNumber(oRs.Fields(4).Value, 1)

 

 oRs.MoveNext

 Loop

 oRs.Close

 Else

 End If

 Set oRs = Nothing

 conn.Close

 Set conn = Nothing
 

提问者对于答案的评价:
厉害

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

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

相关推荐

  • 关于wincc与另外一台机子上的pc-access实现通信

    电脑A:装有wincc电脑B:装有pc-access和step7win32. 两台电脑是在同一个局域网内,电脑b的pc-access已经设置好了,电脑A在opc条目管理器…

    SIMATIC WinCC 2019年6月11日
  • wincc程序同步

    两台wincc项目电脑,,怎么通过1台电脑修改完的程序发布到另一台电脑上。 问题补充:看了一下啊大都是PCS7的方式,,如果不是PCS7该怎么弄呢???????? 钻石用户推荐最佳…

    SIMATIC WinCC 2020年11月1日
  • 关于WINCC实现远程监控的问题

    我想通过以太网实现两台上位机,一台做设备控制用,另一台在远方只是监控设备运行状态不需要控制。请问这个怎么实现?是否需要其他软件? 最佳答案 两种方案1.组态成服务器/客户机的结构,…

    SIMATIC WinCC 2019年6月11日
  • wincc 标签组功能

    如何在wincc中实现像ifix中标签组一样的功能例如现在有三个电机分别为a电机b电机c电机,每个电机都有a相b相c相和前轴后轴5个温度。我现在想只画一个画面,在项目运行时通过点击…

    SIMATIC WinCC 2019年6月10日
  • WINCC 窗口调用

    WINCC 小白,项目中没有用到结构变量,设计阀门打开调用窗口时,是如何自动把对应阀门的位号写入的?我在V脚本中没有看到任何的位号,阀门只设置了动作,其他变量之类的都没有…

    2020年11月1日
  • 求一份中文版的WINCC 7.3帮助手册,谢谢

    本人英文不太好真的看不明白 钻石用户推荐最佳答案 手册和帮助内容是一样的:我这里的链接都是7.4 SP1的,不过通过版本可以选择7.3版本的WinCC V7.4…

    2021年7月5日
  • Wincc变量记录与在线表格控件

    我用的是WINCC7.0,在进行变量记录,要记录的变量是一个浮点数,两秒变化一次。只有一位小数。一分钟为周期记录一次,之后用在线表格控件进行显示,发现显示的浮点数小数位数有很多,且…

    SIMATIC WinCC 2021年7月5日
  • wincc v7,0手册

    各位大侠:哪位有wincc v7.0使用手册(中文版)请发给我一份,小弟感激不尽谢谢!邮箱:392966043@QQ.COM 最佳答案 系统手册《WinCC?V7.3:?…

    2021年7月5日
  • 关于mp277 HMI编辑问题

    软件用的是博途v13sp1,添加新设备选项里选择了mp277,为什么用设备向导,编辑hmi的画面工具在哪里?? 问题补充:不能用设备向导 添加mp277后也没有画面编辑工…

    2017年5月31日
  • wincc客户机显示和WEB浏览显示问题

    有一个成缆线选择Button  在客户机上单击会显示一个Text文本。但是在web上这么做就不显示。请问是为什么,如何解决 最佳答案 用脚本做的吗?把脚本改成变…

    SIMATIC WinCC 2021年7月5日