VBscript und ADO - 3704-Betrieb ist nicht zulässig, wenn das Objekt geschlossen ist

Diese Funktion fügt eine Zeile in eine SQL-Datenbank und zurückgeben muss, die Identitäts-Nummer erstellt:

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

Erfolgreich fügt die Zeile ein, aber ich bekomme die Fehlermeldung '3704 Operation ist nicht zulässig, wenn das Objekt geschlossen ist.', wenn er versucht, die Rückkehr der id-Nummer im Datensatz. Wenn ich das ausführen der sql-Abfrage direkt auf dem server, es funktioniert. Jemand in der Lage zu helfen?

InformationsquelleAutor VBscripter | 2009-11-10

Schreibe einen Kommentar