Sto cercando di interrogare un database SQL da VBS, ma se non si trova alcuna traccia ottengo un erroreerrore EOF e BOF, quando l'esecuzione di query di database SQL
ADODB.Field: BOF o EOF è vero, o il record corrente è stato cancellato. L'operazione richiesta richiede un record corrente.
Penso di aver bisogno di usare un'istruzione IF NOT per catturare se il record non viene trovato ma non riesco a capire dove deve andare.
Do Until objFile.AtEndofStream
strAppName = objFile.ReadLine
ConnString="DRIVER={SQL Server};SERVER=aardvark002;UID=***;PWD=***;DATABASE=DEW_Users"
SQL = "USE Win7AppData SELECT " & Chr(34) & strCountry & Chr(34) & " FROM AppsByCountry WHERE Application = '" & strAppName & "'"
Set Connection = CreateObject("ADODB.Connection")
Set Recordset = CreateObject("ADODB.Recordset")
Connection.Open ConnString
Recordset.Open SQL,Connection
strApproval = Recordset(strCountry)
If StrApproval = "YES" Then
strApproval = "Approved"
Else
strApproval = "Denied"
End If
objExcel.Cells(intRow, 1).Value = strAppname
objExcel.Cells(intRow, 2).Value = strCountry
objExcel.Cells(intRow, 3).Value = strApproval
intRow = intRow + 1
Loop
+1 Quando si utilizza ADODB, il riferimento .EOF è sufficiente, è sufficiente combinare .BOF e .EOF quando si lavora con DAO in MS Access, ad esempio. –