Home Microsoft SQL Server DigiMailing iRN Contact
    Keyword



sys.sp_MSdrop_dynamic_snapshot_agent

  No additional text.


Syntax
create procedure sys.sp_MSdrop_dynamic_snapshot_agent
(
    @publisher sysname,
    @publisher_db sysname,
    @publication sysname,
    @agent_id int
)
AS
begin

    SET NOCOUNT ON

    /*
    ** Declarations.
    */
    DECLARE @retcode    int
    DECLARE @job_id     binary(16)
    DECLARE @job_step_uid uniqueidentifier
    DECLARE @local_job  bit
    DECLARE @publisher_id smallint
    DECLARE @name       nvarchar(100)
    declare @no_of_agents int

    
    -- security check
    -- only db_owner can execute this
    
    if (is_member ('db_owner') != 1)
    begin
        raiserror(14260, 16, -1)
        return (1)
    end
    
    -- security check
    -- Has to be executed from distribution database
    
    if (sys.fn_MSrepl_isdistdb (db_name()) != 1)
    begin
        raiserror(21482, 16, -1, 'sp_MSdrop_dynamic_snapshot_agent', 'distribution')
        return (1)
    end

    /*
    ** Initializations
    */
    select @publisher_id = srvid from master.dbo.sysservers where
        UPPER(srvname) = UPPER(@publisher)

    SELECT @job_id = job_id, @job_step_uid = job_step_uid, @local_job = local_job, @name = name  FROM MSsnapshot_agents WHERE
        publisher_id = @publisher_id AND
        publisher_db = @publisher_db AND
        publication = @publication and
        id = @agent_id

    -- Delete Perfmon instance
    dbcc deleteinstance ("SQL Replication Snapshot", @name)

    -- Return if not exists
    IF @local_job IS NULL
        RETURN(0)

    BEGIN TRAN

    IF @local_job = 1
    BEGIN
        IF EXISTS (SELECT * FROM msdb.dbo.sysjobs_view WHERE job_id = @job_id)
        BEGIN
            EXEC @retcode = sys.sp_MSdrop_repl_job @job_id = @job_id,
            										@job_step_uid = @job_step_uid
            IF @@ERROR <> 0 or @retcode <> 0
                GOTO UNDO
        END
    END

    DELETE MSsnapshot_agents WHERE id = @agent_id
    IF @@ERROR <> 0
        GOTO UNDO

    -- Remove history
    DELETE MSsnapshot_history WHERE agent_id = @agent_id
    IF @@ERROR <> 0
        GOTO UNDO

    COMMIT TRAN
    RETURN(0)

UNDO:
    if @@TRANCOUNT = 1
        ROLLBACK TRAN
    else
        COMMIT TRAN
    return(1)
end

 
Last revision 2008RTM
See also

  sp_MSdropmergedynamicsnapshotjob (Procedure)
       



News

  Query a named instance
Sybase+ASE+silent+install
SQL 2008 R2
Deprecated procedures in SQL2008
Reporting Services item-level role definitions
Create all your missing indexes
Converting datetime field
Start MSSQL Server Profiler at time
Replicating MSSQL Server views
Exploring Microsoft Sharepoint
The OLE DB provider "SQLNCLI10" for linked server indicates.
Mobile solar charger
Oracle to SQL Server replication
Cannot insert the value NULL into column
Undocumented Microsoft SQL Server 2008
VMware
Zoekmachine optimalisatie
SQL Servers hidden objects
FckEditor
Flash in Ajax
De hype die AJAX heet
Barcode scannen
MySQL; Gratis, makkelijk en snel!
PHP
sIFR; de combinatie tussen HTML en Flash