Syntaxe de la hiérarchie d’objets (Transact-SQL)
S'applique à : SQL Server
Le paramètre propertyname et sp_OAGetProperty
sp_OASetProperty
le paramètre methodname de sp_OAMethod
prise en charge d’une syntaxe de hiérarchie d’objets similaire à celle de Microsoft Visual Basic. Lorsque vous utilisez cette syntaxe spéciale, ces paramètres ont la forme générale suivante.
Syntaxe
TraversedObject.PropertyOrMethod
Arguments
TraversedObject
Objet OLE dans la hiérarchie sous l’objettoken spécifié dans la procédure stockée. Utilisez la syntaxe Visual Basic pour spécifier une série de collections, de propriétés d’objet et de méthodes qui retournent des objets. Chaque spécificateur d’objet de la série doit être séparé par un point (.
).
Un élément dans la série peut être le nom d'une collection. Utilisez la syntaxe suivante pour indiquer une collection :
Collection("item")
Les guillemets doubles ("
) sont requis. La syntaxe du point d’exclamation (!
) Visual Basic pour les collections n’est pas prise en charge.
PropertyOrMethod
Nom d’une propriété ou d’une méthode du TraversedObject.
Pour spécifier tous les paramètres d’index ou de méthode entre parenthèses (à l’origine de tous les paramètres d’index ou de méthode , sp_OAGetProperty
sp_OASetProperty
ou sp_OAMethod
à ignorer) utilisez la syntaxe suivante :
PropertyOrMethod ( [ ParameterName := ] "parameter" [ , ... ] )
Les guillemets doubles ("
) sont requis. Tous les paramètres nommés doivent être spécifiés après tous les paramètres positionnels.
Notes
Si TraversedObject n’est pas spécifié, PropertyOrMethod est requis.
Si PropertyOrMethod n’est pas spécifié, le TraversedObject est retourné en tant que paramètre de sortie de jeton d’objet à partir de la procédure stockée OLE Automation.
Si PropertyOrMethod est spécifié, la propriété ou la méthode du TraversedObject est appelée. La valeur de propriété ou la valeur de retour de méthode est retournée en tant que paramètre de sortie de la procédure stockée OLE Automation.
Si un élément de la liste TraversedObject ne retourne pas d’objet OLE, une erreur est générée.
Pour plus d’informations sur la syntaxe de l’objet OLE Visual Basic, consultez la documentation Visual Basic.
Pour plus d’informations sur les HRESULT
codes de retour, consultez sp_OACreate.
Exemples
Voici des exemples de syntaxe de hiérarchie d’objets qui utilisent un objet SQL-DMO SQLServer.
-- Get the AdventureWorks2022 Person.Address Table object.
EXEC @hr = sp_OAGetProperty @object,
'Databases("AdventureWorks2022").Tables("Person.Address")',
@table OUT
-- Get the Rows property of the AdventureWorks2022 Person.Address table.
EXEC @hr = sp_OAGetProperty @object,
'Databases("AdventureWorks2022").Tables("Person.Address").Rows',
@rows OUT
-- Call the CheckTable method to validate the
-- AdventureWorks2022 Person.Address table.
EXEC @hr = sp_OAMethod @object,
'Databases("AdventureWorks2022").Tables("Person.Address").CheckTable',
@checkoutput OUT