sys.sp_rda_reauthorize_db (Transact-SQL)

Si applica a: SQL Server 2016 (13.x) e versioni successive

Ripristina la connessione autenticata tra un database locale abilitato per Stretch e il database remoto.

Importante

Stretch Database è deprecato in SQL Server 2022 (16.x) e database SQL di Azure. Questa funzionalità verrà rimossa in una versione futura del motore di database. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata.

Convenzioni di sintassi Transact-SQL

Sintassi

sp_rda_reauthorize_db
    [ @credential = ] credential
      , [ @with_copy = ] with_copy
    [ , [ @azure_servername = ] azure_servername
      , [ @azure_databasename = ] azure_databasename ]
[ ; ]

Argomenti

[ @credential = ] N'credential'

Credenziali con ambito database associate al database abilitato per l'estensione locale. @credential è sysname.

[ @with_copy = ] with_copy

Specifica se creare una copia dei dati remoti e connettersi alla copia (scelta consigliata). @with_copy è bit.

[ @azure_servername = ] azure_servername

Specifica il nome del server di Azure che contiene i dati remoti. @azure_servername è sysname.

[ @azure_databasename = ] azure_databasename

Specifica il nome del database di Azure che contiene i dati remoti. @azure_databasename è sysname.

Valori del codice restituito

0 (esito positivo) o > 0 (errore).

Autorizzazioni

Richiede autorizzazioni db_owner .

Osservazioni:

Quando si esegue sys.sp_rda_reauthorize_db (Transact-SQL) per riconnettersi al database di Azure remoto, questa operazione reimposta automaticamente la modalità di query su LOCAL_AND_REMOTE, ovvero il comportamento predefinito per Stretch Database. Ovvero, le query restituiscono risultati sia dai dati locali che da quello remoto.

Esempi

Nell'esempio seguente viene ripristinata la connessione autenticata tra un database locale abilitato per Stretch e il database remoto. Crea una copia dei dati remoti (scelta consigliata) e si connette alla nuova copia.

DECLARE @credentialName NVARCHAR(128);

SET @credentialName = N'<existing_database_scoped_credential_name>';

EXEC sp_rda_reauthorize_db
    @credential = @credentialName,
    @with_copy = 1;