Condividi tramite


Oggetti di automazione OLE in Transact-SQL

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, e gli oggetti di automazione OLE eseguiti tramite le stored procedure operano nello spazio indirizzi di un'istanza del motore del database SQL Server esattamente come avviene per una stored procedure estesa.

Le stored procedure di automazione OLE consentono Transact-SQL batch per fare riferimento a oggetti SQL-DMO e oggetti di automazione OLE personalizzati, ad esempio oggetti che espongono l'interfaccia IDispatch . Un server OLE in-process personalizzato creato tramite Microsoft Visual Basic deve avere un gestore errori (specificato con l'istruzione On Error GoTo ) per le Class_Initialize e Class_Terminate subroutine. Gli errori non gestiti nella Class_Initialize e Class_Terminate subroutine possono causare errori imprevedibili, ad esempio una violazione di accesso in un'istanza del motore di database. Sono consigliati anche i gestori di errori per altre subroutine.

Il primo passaggio quando si usa un oggetto di automazione OLE in Transact-SQL consiste nel chiamare la stored procedure di sistema sp_OACreate per creare un'istanza dell'oggetto nello spazio indirizzi dell'istanza del motore di database.

Dopo aver creato un'istanza dell'oggetto, chiamare le stored procedure seguenti per utilizzare le proprietà, i metodi e le informazioni sugli errori correlate all'oggetto:

  • sp_OAGetProperty ottiene il valore di una proprietà.

  • sp_OASetProperty imposta il valore di una proprietà.

  • sp_OAMethod chiama un metodo.

  • sp_OAGetErrorInfo ottiene le informazioni più recenti sull'errore.

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

Gli oggetti di automazione OLE restituiscono dati tramite i valori e i metodi delle proprietà. sp_OAGetProperty e sp_OAMethod restituiscono questi valori di dati sotto forma di set di risultati.

L'ambito di un oggetto di automazione OLE è un batch. Tutti i riferimenti a un oggetto devono essere contenuti in un singolo batch, in una stored procedure o in un trigger.

Quando fa riferimento a oggetti, gli oggetti di automazione OLE di SQL Server supportano l'attraversamento dell'oggetto a cui si fa riferimento ad altri oggetti contenuti. Ad esempio, quando si usa l'oggetto SQLServer SQL-DMO, è possibile creare riferimenti a database e tabelle contenute in tale server.

Sintassi della gerarchia di oggetti (Transact-SQL)

Configurazione dell'area superficiale

Opzione di configurazione del server Ole Automation Procedures

sp_OACreate (Transact-SQL)

sp_OAGetProperty (Transact-SQL)

sp_OASetProperty (Transact-SQL)

sp_OAMethod (Transact-SQL)

sp_OAGetErrorInfo (Transact-SQL)

sp_OADestroy (Transact-SQL)