Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So deaktivieren Sie die Änderungsdatenerfassung (CDC) in einer Datenbank in SQL Server – SQL Server-Lernprogramm

Szenario:

Sie arbeiten als SQL Server-DBA oder -Entwickler. Sie müssen ein Skript schreiben, das den Datenbanknamen akzeptiert, und dann die Änderungsdatenerfassung ( CDC ) für diese Datenbank deaktivieren.
Das folgende Skript kann verwendet werden, um die Änderungsdatenerfassung für eine zu deaktivieren Datenbank. Sie müssen den Wert für die @DBName-Variable auf die Datenbank setzen, für die Sie Change Data Capture deaktivieren möchten.

/*--------------------------------
1: Disable CDC ON Database
----------------------------------*/
DECLARE @DBName NVARCHAR(100)
DECLARE @Cdc_Status BIT
 --> Provide your Database Name on which you want to Disable CDC
SET @DBName='TESTDB'
SET @Cdc_Status=(SELECT is_cdc_enabled
                 FROM   sys.databases
                 WHERE  name = @DBName)
IF @Cdc_Status = 0
  PRINT ' CDC is already disabled on Database:: '
        + @DBName
IF @Cdc_Status = 1
  BEGIN
      DECLARE @SQL NVARCHAR(500)

      SET @SQL=@DBName + '.sys.Sp_cdc_disable_db'

      EXEC (@SQL)

      PRINT ' CDC Disabled on ' + @DBName
            + ' successfully'
  END