core.sp_update_data_source (Transact-SQL)

在管理数据仓库的 core.source_info_internal 表中更新现有行或插入新行。 每次上载包开始将数据上载到管理数据仓库时,数据收集器运行时组件都会调用此过程。

主题链接图标 Transact-SQL 语法约定

语法

core.sp_update_data_source [ @collection_set_uid = ] 'collection_set_uid' 
    ,[ @machine_name = ] 'machine_name'
    , [ @named_instance = ] 'named_instance'
    , [ @days_until_expiration = ] days_until_expiration 
    , [ @source_id = ] source_id OUTPUT

参数

  • [ @collection\_set\_uid = ] 'collection_set_uid'
    收集组的 GUID。 collection_set_uid 的数据类型为 uniqueidentifier,无默认值。 若要获取 GUID,请在 msdb 数据库中查询 dbo.syscollector_collection_sets 视图。

  • [ @machine\_name = ] 'machine_name'
    收集组所在的服务器的名称。 machine_name 的数据类型为 sysname,无默认值。

  • [ @named\_instance = ] 'named_instance'
    收集组实例的名称。 named_instance 的数据类型为 sysname,无默认值。

    注意注意

    named_instance 必须是完全限定的实例名称,由计算机名称和实例名称组成,格式为 computername\instancename。

  • [ @days\_until\_expiration = ] days_until_expiration
    快照数据保持期剩余天数。 days_until_expiration 的数据类型为 smallint。

  • [ @source\_id = ] source_id
    更新的来源的唯一标识符。 source_id 的数据类型为 int,并作为 OUTPUT 返回。

返回代码值

0(成功)或 1(失败)

注释

每次上载包开始将数据上载到管理数据仓库时,数据收集器运行时组件都会调用 core.sp_update_data_source。 如果自上次上载后进行了以下更改之一,则会更新 core.source_info_internal 表:

  • 添加了新收集组。

  • 更改了 days_until_expiration 的值。

权限

要求具有 mdw_writer 固定数据库角色(拥有 EXECUTE 权限)的成员身份。

示例

下面的示例更新数据源(在本例中为“磁盘使用情况”收集组)、设置过期前的天数并返回数据源的标识符。 在本示例中,使用默认实例。

USE <management_data_warehouse>;
GO
DECLARE @source_id int;
EXEC core.sp_update_data_source 
@collection_set_uid = '7B191952-8ECF-4E12-AEB2-EF646EF79FEF', 
@machine_name = '<computername>',
@named_instance = 'MSSQLSERVER',
@days_until_expiration = 10,
@source_id = @source_id OUTPUT;

请参阅

参考

系统存储过程 (Transact-SQL)

数据收集器存储过程 (Transact-SQL)

概念

管理数据仓库