vb通过oledb访问归档数据库的问题

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

 sDsn = "Catalog=CC_fang_09_06_11_17_08_12R;"

 sSer = "Data Source=.\WinCC"

 sCon = sPro + sDsn + sSer
 sSql = "TAG:R,'ProcessValueArchive\11','0000-00-00 00:00:00', '0000-00-00 00:00:00'"

 Set conn = reateObject"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

 If conn.state = 0 Then
  MsgBox "数据库连接不成功,可能是WINCC生产监控系统程序未激活,请先激活监控系统", vbOKCancel, "数据库连接错误"
 conn.Close
 Exit Sub
 End If

 oCom.CommandText = sSql

 Set oRs = oCom.Execute

 
 一开始程序可以运行,vb可以读取上历史数据库的值,可是重新装了系统,wincc和sql2000后,就读取不上数值来了。
 激活wincc项目后,运行vb,vb就报错"-2147217865(80040e37) invalid object name "dbo.archive" "
 然后调试,错误就显示在 Set oRs = oCom.Execute 这里

 另外,怎么wincc原来的项目文件中有些汉字也显示不出来了呢,只显示????,怎末回事啊?用户归档也只能用德语显示,重新装了真郁闷!!是不是软件的问题啊?
 请高手帮帮忙!谢谢

 

问题补充:
1.原程序中的create指令是正确的,往这里粘贴时没粘贴上
 2 数据库名称已改正过来
 

最佳答案

Set conn = reateObject"ADODB.Connection")
 这里是否是笔误呀?SET CONN= Createobject(....),Createobject少个字母C?

提问者对于答案的评价:
问题已经解决,谢谢阿!
 虽然问题不出在这里,但是谢谢你能如此细心的帮我!谢谢!

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

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

相关推荐