VBscript RecordCount属性

时间:2013-04-23 15:05:31

标签: vbscript ado recordset

我是VBScript的新手,我遇到了以下问题。我想从sql server db获取数据并允许RecordCount属性。下一个代码获取数据但RecordCount被禁用。如何启用此属性

Const DB_CONNECT_STRING = "Provider=SQLOLEDB.1;Data Source=BUG\SQLSERVER2005;Initial Catalog=test;user id ='sa';password='111111'"
Set myConn = CreateObject("ADODB.Connection")
Set myCommand = CreateObject("ADODB.Command" )
myConn.Open DB_CONNECT_STRING
Set myCommand.ActiveConnection = myConn
myCommand.CommandText = ("select * from klienci k where k.indeks = " & oferty(16))
Set klienci = myCommand.Execute

2 个答案:

答案 0 :(得分:0)

我不认为这是一个VBScript问题 - 我认为这是一个ADO问题。

我认为您正在使用默认的仅向前游标,该游标不适用于recordcount。

我认为你应该在那里粘贴一个cursortype = adOpenStatic但是我确定你是否在指定一个记录集对象时有点麻烦 - klienci?

如果有,试试     klienci.cursortype = adOpenStatic

答案 1 :(得分:0)

AFAIK使用Execute对象的Command方法时无法更改游标类型,并且在检索记录集后无法更改游标类型。但是这样的事情可能有用:

Const DB_CONNECT_STRING = "Provider=SQLOLEDB.1;Data Source=BUG\SQLSERVER2005;Initial Catalog=test;user id ='sa';password='111111'"

Set myConn = CreateObject("ADODB.Connection")
myConn.Open DB_CONNECT_STRING

query = "select * from klienci k where k.indeks = " & oferty(16)

Set klienci = CreateObject("ADODB.Recordset")
klienci.CursorLocation = 3 'adUseClient
klienci.CursorType     = 3 'adOpenStatic
klienci.LockType       = 1 'adLockReadOnly

klienci.Open query, myConn
相关问题