VBscript und ADO - 3704 Der Betrieb ist nicht zulässig, wenn das Objekt geschlossen ist
Diese Funktion fügt eine Zeile in eine SQL-Datenbank ein und muss die erstellte Identifikationsnummer zurückgeben:
Function WriteDatabase(backupTypeID, numImages, folderSize, success, errorMessage, strLogFileName)
On Error Resume Next
err.clear
Set objConnection = CreateObject("ADODB.Connection")
Set objRecordSet = CreateObject("ADODB.Recordset")
objConnection.Open "Provider=SQLOLEDB;Data Source=x.x.x.x;Initial Catalog=DB;User ID=sa;Password=xxxxxx"
sqlquery = "INSERT INTO tblImageCopies (BackupCopyDate, BackupCopyTypeID, NumImages, ImagesFolderSize, Success, ErrorMessage) VALUES (GETDATE(), " & backupTypeID & ", " & numImages & ", " & folderSize & ", " & success & ", " & errorMessage & "); SELECT scope_identity() AS ImageCopyID;"
objRecordSet.Open sqlquery,objConnection
objRecordSet.MoveFirst
WriteDatabase = objRecordSet("ImageCopyID")
objRecordSet.Close
objConnection.Close
If err.number <> 0 Then
WriteLog "Error writing to the EHN database - " & err.number & " " & err.description, strLogFileName
End If
End Function
Die Zeile wurde erfolgreich eingefügt, es wird jedoch die Fehlermeldung "3704 Operation ist nicht zulässig, wenn das Objekt geschlossen wird" angezeigt. Wenn versucht wird, die Identitätsnummer im Datensatz zurückzugeben. Wenn ich diese SQL-Abfrage direkt auf dem Server ausführe, funktioniert es. Kann jemand helfen?