Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: SQL Server
Transact-SQL enthält mehrere gespeicherte Systemprozeduren, die Verweise auf OLE-Automatisierungsobjekte in Transact-SQL-Batches, gespeicherten Prozeduren und Triggern ermöglichen. Diese gespeicherten Systemprozeduren werden als erweiterte gespeicherte Prozeduren ausgeführt, und die OLE-Automatisierungsobjekte, die über die gespeicherten Prozeduren ausgeführt werden, werden wie eine erweiterte gespeicherte Prozedur im Adressraum einer Instanz der SQL Server-Datenbank-Engine ausgeführt.
Die gespeicherten OLE-Automatisierungsprozeduren ermöglichen es Transact-SQL-Batches, auf SQL-DMO-Objekte und benutzerdefinierte OLE-Automatisierungsobjekte zu verweisen, wie etwa Objekte, die die IDispatch-Schnittstelle verfügbar machen. Ein benutzerdefinierter In-Process-OLE-Server, der mithilfe von Microsoft Visual Basic erstellt wurde, muss mit einem (mit der Anweisung On Error GoTo angegebenen) Fehlerhandler für die Unterroutinen Class_Initialize und Class_Terminate ausgestattet sein. Nicht behandelte Fehler in den Unterroutinen Class_Initialize und Class_Terminate können unvorhersehbare Fehler verursachen, wie z. B. eine Zugriffsverletzungen in einer Instanz der Datenbank-Engine. Fehlerhandler werden auch für andere Unterroutinen empfohlen.
Der erste Schritt beim Verwenden eines OLE-Automatisierungsobjekts in Transact-SQL ist das Aufrufen der gespeicherten Systemprozedur sp_OACreate
, um eine Instanz des Objekts im Adressraum der Instanz der Datenbank-Engine zu erstellen.
Verwenden Sie nach dem Erstellen einer Instanz des Objekts die folgenden gespeicherten Prozeduren, um mit den Eigenschaften, Methoden und Fehlerinformationen im Zusammenhang mit dem Objekt zu arbeiten:
sp_OAGetProperty
ruft den Wert einer Eigenschaft ab.sp_OASetProperty
legt den Wert einer Eigenschaft fest.sp_OAMethod
ruft eine Methode auf.sp_OAGetErrorInfo
ruft die letzten Fehlerinformationen ab.
Wenn das Objekt nicht mehr benötigt wird, rufen Sie sp_OADestroy
auf, um die Zuordnung der mit sp_OACreate
erstellten Instanz des Objekts aufzuheben.
OLE-Automatisierungsobjekte geben Daten durch Eigenschaftswerte und Methoden zurück. Die Prozeduren sp_OAGetProperty
und sp_OAMethod
geben diese Datenwerte als Resultset zurück.
Der Gültigkeitsbereich eines OLE-Automatisierungsobjekts ist ein Batch. Alle Verweise auf das Objekt müssen in einem einzelnen Batch, einer gespeicherten Prozedur oder einem Trigger enthalten sein.
Beim Verweisen auf Objekte unterstützen die SQL Server-OLE-Automatisierungsobjekte das Traversieren des Objekts, auf das verwiesen wird, auf andere Objekte, die es enthält. Wenn beispielsweise das SQL-DMO-Objekt SQLServer verwendet wird, können Verweise auf Datenbanken und Tabellen erfolgen, die sich auf dem betreffenden Server befinden.
Siehe auch
- Objekthierarchiesyntax (Transact-SQL)
- Oberflächenkonfiguration
- sp_OACreate (Transact-SQL)
- sp_OAGetProperty (Transact-SQL)
- sp_OASetProperty (Transact-SQL)
- sp_OAMethod (Transact-SQL)
- sp_OAGetErrorInfo (Transact-SQL)
- sp_OADestroy (Transact-SQL)