ASOCIORS OF (instrucción)
La instrucción ASSOCIATORS OF recupera todas las instancias asociadas a una instancia de origen determinada. Las instancias recuperadas se conocen como puntos de conexión. Cada punto de conexión se devuelve tantas veces como hay asociaciones entre él y el objeto de origen. Por ejemplo, suponga que hay instancias A, B, X e Y. Existen dos instancias de asociación, una que vincula A y X y otra que vincula B e Y. La consulta siguiente devuelve el punto de conexión único X:
ASSOCIATORS OF {A}
Sin embargo, si hay otra asociación que vincula A y X, la consulta anterior devuelve dos puntos de conexión X.
La sintaxis básica de la instrucción ASSOCIATORS OF es:
ASSOCIATORS OF {ObjectPath}
Tenga en cuenta que las llaves forman parte de la sintaxis. Cualquier ruta de acceso de objeto válida se puede usar para ObjectPath. Los tokens dentro de la ruta de acceso del objeto no pueden contener ningún espacio en blanco. Por ejemplo, la consulta de la lista siguiente devuelve instancias asociadas al disco lógico especificado:
-
Consulta:
-
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID="C:"}
-
Resultados:
-
Win32_Directory.Name="C:\\"
Win32_ComputerSystem.Name="mycomputer" Win32_DiskPartition.DeviceID="Disk #0, Partition #0"
Al igual que con la instrucción SELECT de , una instrucción ASSOCIATORS OF puede incluir una cláusula WHERE , pero la cláusula WHERE para una instrucción ASSOCIATORS OF es muy diferente de la instrucción SELECTWHERE.
La cláusula WHERE de la instrucción ASSOCIATORS OF puede incluir una o varias de las siguientes palabras clave predefinidas y sus valores:
ASSOCIATORS OF {ObjectPath} WHERE
AssocClass = AssocClassName
ClassDefsOnly
RequiredAssocQualifier = QualifierName
RequiredQualifier = QualifierName
ResultClass = ClassName
ResultRole = PropertyName
Role = PropertyName
Tenga en cuenta que las subclases opcionales no están separadas por comas.
La palabra clave AssocClass indica que los puntos de conexión devueltos deben estar asociados con el origen a través de la clase especificada o una de sus clases derivadas. Por ejemplo, la consulta de la lista siguiente devuelve solo los puntos de conexión asociados al origen a través de la clase de asociación Win32_SystemDevices o cualquiera de sus clases derivadas:
-
Consulta:
-
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID="C:"} WHERE AssocClass = Win32_SystemDevices
-
Resultados:
-
Win32_ComputerSystem.Name="mycomputer"
La palabra clave ClassDefsOnly indica que la cláusula devuelve un conjunto de resultados de objetos de definición de clase en lugar de instancias reales de las clases. Estos objetos son las definiciones de clases a las que pertenecen las instancias del punto de conexión. Por ejemplo, la consulta de la lista siguiente devuelve definiciones para las clases Win32_Directory y Win32_ComputerSystem:
-
Consulta:
-
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID="C:"} WHERE ClassDefsOnly
-
Resultados:
-
Win32_Directory
Win32_ComputerSystem Win32_DiskPartition
Las palabras clave ClassDefsOnly y ResultClass son mutuamente excluyentes. Si se usan juntos, se produce un error de consulta no válido.
La palabra clave RequiredAssocQualifier indica que los puntos de conexión devueltos deben estar asociados al objeto de origen a través de una clase de asociación que incluya el calificador especificado. Este tipo de filtrado se usa para eliminar una amplia gama de puntos de conexión a menos que los puntos de conexión estén asociados al destino a través de un conjunto determinado de clases de asociación etiquetadas. Por ejemplo, la consulta de la lista siguiente devuelve instancias de punto de conexión si la clase de asociación incluye un calificador denominado Association.
-
Consulta:
-
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID="C:"} WHERE RequiredAssocQualifier = Association
-
Resultados:
-
Win32_Directory.Name="C:\\"
Win32_ComputerSystem.Name="mycomputer" Win32_DiskPartition.DeviceID="Disk #0, Partition #0"
La palabra clave RequiredQualifier indica que los puntos de conexión devueltos asociados al objeto de origen deben incluir el calificador especificado. La palabra clave RequiredQualifier se puede usar para incluir determinados tipos de instancias en el conjunto de resultados. Por ejemplo, la consulta de la lista siguiente devuelve instancias de punto de conexión que incluyen un calificador denominado Configuración regional.
-
Consulta:
-
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID="C:"} WHERE RequiredQualifier = Locale
-
Resultados:
-
Win32_Directory.Name="C:\\"
Win32_ComputerSystem.Name="mycomputer" Win32_DiskPartition.DeviceID="Disk #0, Partition #0"
La palabra clave ResultClass indica que los puntos de conexión devueltos asociados al objeto de origen deben pertenecer o derivarse de la clase especificada. Por ejemplo, la consulta de la lista siguiente devuelve instancias de punto de conexión que se derivan de la clase CIM_Directory:
-
Consulta:
-
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID="C:"} WHERE ResultClass = Cim_Directory
-
Resultados:
-
Win32_Directory.Name="C:\\"
Las palabras clave ClassDefsOnly y ResultClass son mutuamente excluyentes. Si se usan juntos, se produce un error de consulta no válido.
La palabra clave ResultRole indica que los puntos de conexión devueltos deben desempeñar un rol determinado en su asociación con el objeto de origen. El rol se define mediante la propiedad especificada, una propiedad de referencia de tipo ref. Por ejemplo, la palabra clave ResultRole se puede usar para recuperar todos los puntos de conexión que tienen la propiedad GroupComponent de en su asociación con un objeto de origen, como se muestra en la consulta siguiente.
-
Consulta:
-
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID="C:"} WHERE ResultRole = GroupComponent
-
Resultados:
-
Win32_ComputerSystem.Name="mycomputer"
La palabra clave Role indica que los puntos de conexión devueltos participan en una asociación con el objeto de origen donde el objeto de origen desempeña un rol determinado. El rol se define mediante la propiedad especificada, una propiedad de referencia de tipo ref. Por ejemplo, la palabra clave Role se puede usar para recuperar todos los puntos de conexión asociados a un objeto de origen que tengan la propiedad GroupComponent, como se muestra en la consulta siguiente.
-
Consulta:
-
ASSOCIATORS OF {Win32_LogicalDisk.DeviceID="C:"} WHERE Role = GroupComponent
-
Resultados:
-
Win32_Directory.Name="C:\\"
Nota
Las consultas complejas no pueden usar "And" o "Or" para separar palabras clave para las instrucciones ASSOCIATORS OF y REFERENCES OF. Además, el signo igual es el único operador válido que se puede usar en dichas consultas. Por ejemplo, la consulta siguiente es válida:
ASSOCIATORS OF {win32_LogicalDisk="C:"} WHERE resultClass = Win32_Directory requiredQualifier = Dynamic
Nota
Los ejemplos siguientes no son válidos. El primer ejemplo no usa el signo igual y el segundo ejemplo intenta usar erróneamente la palabra clave AND.
Associators of {win32_LogicalDisk="C:"} where resultClass = Win32_Directory requiredQualifier <> Dynamic
Associators of {win32_LogicalDisk="C:"} where resultClass = Win32_Directory AND requiredQualifier = Dynamic