Oggetti di automazione OLE in Transact-SQL

Si applica a:SQL Server

Transact-SQL include varie stored procedure di sistema che consentono di fare riferimento agli oggetti di automazione OLE in batch, stored procedure e trigger Transact-SQL. Queste stored procedure di sistema vengono eseguite come stored procedure estese tramite le quali gli oggetti di automazione OLE vengono eseguiti nello spazio degli indirizzi di un'istanza del motore di database di SQL Server, esattamente come le stored procedure estese.

Le stored procedure di automazione OLE consentono di fare riferimento in batch Transact-SQL a oggetti SQL-DMO e a oggetti di automazione OLE personalizzati, ad esempio gli oggetti che espongono l'interfaccia IDispatch. Un server OLE In-Process personalizzato creato con Microsoft Visual Basic deve includere un gestore degli errori, specificato con l'istruzione On Error GoTo, per le subroutine Class_Initialize e Class_Terminate. Gli errori non gestiti nelle subroutine Class_Initialize e Class_Terminate possono provocare errori imprevedibili, ad esempio una violazione dell'accesso in un'istanza del motore di database. È consigliabile disporre inoltre dei gestori degli errori per altre subroutine.

Per usare un oggetto di automazione OLE in Transact-SQL, prima di tutto è necessario chiamare la stored procedure di sistema sp_OACreate per creare un'istanza dell'oggetto nello spazio degli indirizzi dell'istanza del motore di database.

Richiamare quindi le stored procedure seguenti per utilizzare le proprietà, i metodi e le informazioni sugli errori dell'oggetto:

  • sp_OAGetProperty ottiene il valore di una proprietà.

  • sp_OASetProperty imposta il valore di una proprietà.

  • sp_OAMethod chiama un metodo.

  • sp_OAGetErrorInfo recupera le informazioni sugli errori più recenti.

Quando l'oggetto non è più necessario, chiamare sp_OADestroy per deallocare l'istanza dell'oggetto creata con sp_OACreate.

Gli oggetti di automazione OLE restituiscono dati tramite valori e metodi di proprietà. Le procedure sp_OAGetProperty e sp_OAMethod restituiscono questi valori dei dati sotto forma di un set di risultati.

L'ambito di un oggetto di automazione OLE è il batch. Tutti i riferimenti all'oggetto devono essere inclusi in un unico batch, stored procedure o trigger.

Gli oggetti di automazione OLE di SQL Server supportano l'attraversamento dell'oggetto a cui fanno riferimento per accedere agli altri oggetti che contiene. Se, ad esempio, si usa l'oggetto SQL-DMO di SQLServer , è possibile fare riferimento ai database e alle tabelle disponibili in tale server.

Vedi anche

Passaggi successivi