Configuration Manager特殊查询
扩展 WMI 查询语言 (WQL) 支持特定于Configuration Manager需求的查询。 下表介绍了支持的其他查询。
Array 属性
数组属性中的特定值。
基类
基类中存在的属性值。
原型
类定义,而不是类数据。
集合限制
特定于特定集合的数据。
数组属性查询
由于数组属性的性质,将它们包含在扩展的 WQL 查询中可能有点复杂。 例如, SMS_R_System
请考虑包含 属性的 IPAddresses
类。 属性 IPAddresses
是包含一个或多个单独地址的数组。 若要查询具有 IP 地址的计算机,可以指定以下两个查询之一。
SELECT * FROM SMS_R_System WHERE IPAddresses = “2.2.2.2”
SELECT * FROM SMS_R_SYSTEM WHERE IPAddresses in (“1.1.1.1”、“2.2.2.2”)
基类查询
基类上的扩展 WQL 查询从所有子类返回实例。 对于抽象基类查询,返回的实例始终是派生类的实例。 例如,以下查询从 和 SMS_SCI_Address
等SMS_SCI_Component
类返回实例,这些类继承自 SMS_SiteControlItem
的属性。
SELECT * FROM SMS_SiteControlItem WHERE Sitecode="ABC"
原型查询
扩展 WQL 允许请求结果集包含要返回的类的定义,而不是类的实际实例。 这种类型的查询有两种可能的结果。 在大多数情况下,原型查询返回包含定义的类对象。 如果查询是 SELECT 语句中具有多个类的 JOIN 操作,则原型查询将返回 __Generic 类的实例。
尽管原型查询在处理 JOIN 操作的结果时最有用,但所有查询都支持它们。 若要请求类定义作为结果集,请将 lFlags
中的 IWbemServices::ExecQuery
或 IWbemServices::ExecQueryAsync
参数设置为 WBEM_FLAG_PROTOTYPE。
集合限制查询
Configuration Manager集合是一组资源,例如计算机和用户。 扩展 WQL 支持针对特定集合的查询。 有两种方法可用于将查询限制为特定集合:
将 LimitToCollectionIDs 上下文值设置为所需的 CollectionID 值。 此上下文值通过 方法中的 IWbemServices::ExecQuery
IWbemContext 指针提供,指向集合名称。
使用 SMS_CollectionMember
传递给 ExecQuery 的查询中的 派生类指定内部 JOIN 操作。
第二种方法较慢,但如果使用使用 WMI ODBC 适配器的应用程序,则唯一可能的方法。
另请参阅
Configuration Manager关联类
Configuration Manager位字段属性
Configuration Manager日期和时间格式
Configuration Manager嵌入对象
Configuration Manager扩展 WMI 查询语言
对象概述Configuration Manager延迟属性
关于错误Configuration Manager对象安全性