wincc

各位好,以下是我写的删除SQL2005数据库数据的一点VBS脚本,我想请教一下怎么我脚本执行到Set objRst=CreateObject("ADODB.Recordset")这句后面,objRst.Open strSql,objCon这句就执行不了,我看不出来到底哪出错?请帮帮我看看到底脚本是哪出错?谢谢!
Sub OnClick(Byval Item)                                                                
Dim objcon
Dim strCon,strSql
Dim b
Dim objRst
Set objCon=CreateObject("ADODB.Connection")
strCon="DRIVER={SQL Server};SERVER=.\Wincc;DATABASE=Test"
objCon.ConnectionString=strCon
objCon.Open
strSql="Select*Form yy order by 编号desc "
Set objRst=CreateObject("ADODB.Recordset")
objRst.Open strSql,objCon
objRst.CursorLocation = adUseClient
        objRst.MoveFirst
        Dim temp1,temp2 
        temp1= objRst(0)
        objRst.MoveLast
        temp2 = objRst(0)
        temp1 = temp1- 20
        If temp1 <>temp2 Then
        Dim temps
        temps = "delete * from yy where 编号<" &temp1
       Set objRst = objCon.Execute(temps)
        End If
        Set objRst=Nothing
        Set objCon=Nothing
End Sub

最佳答案

1,在SQL中,建立、修改和删除数据库中基本表结构的命令分别为
UPDATE --更新数据库表中的数据(修改) 
DELETE --从数据库表中删除数据行 
CREATE TABLE --创建一个数据库表 
ALTER TABLE --修改数据库表结构 
DROP TABLE --从数据库中删除表
--插入数据 
insert   [MDB]...[A] 
select   3, ''C '' 

--删除数据 
delete   from   [MDB]...[A] 
2,转载一个写数据的例子,参考:
在WINCC中用VBS脚本向SQL数据库循环写数据
按钮脚本如下
Dim DM
Dim SDZL,SJZL
Dim database,server,uid,pwd
Dim stren,cn,is_sql
database=PL
server=PC\WINCC
uid=sa
pwd=123
stren=provider = SQLOLEDB.1;DRIVER = SQL SERVER;SERVER=&SERVER&_
;DATABASE=&DATABASE&;UID=&uid&;pwd=&pwd
Set cn = CreateObject(adodb.connection)
cn.connectionstring = stren
cn.open
Dim i
For i=0 To 12
Dim field1,field2,field3
field1=T1_ & i
field2=T2_ & i
field3=T3_ & i
Set DM=HMIRuntime.Tags (field1)
DM.READ
Set SDZL=HMIRuntime.Tags (field2)
SDZL.READ
Set SJZL=HMIRuntime.Tags (field3)
SJZL.READ
is_sql=insert into ONE(DM,SDZL,SJZL) values(&DM.value&,&SDZL.value&,&SJZL.value&)
cn.execute(is_sql)
Next
cn.close

提问者对于答案的评价:

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

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

相关推荐