Condividi tramite


Scollegare un database

Si applica a: SQL Server

Questo articolo illustra come ollegare un database in SQL Server usando SQL Server Management Studio o Transact-SQL. I file scollegati non vengono eliminati e rimangono nel file system. I file possono essere ricollegati usando le opzioni CREATE DATABASE ... FOR ATTACH o FOR ATTACH_REBUILD_LOG. I file possono anche essere spostati in un altro server e collegati a un'istanza con la stessa versione o successiva.

Limiti

Per un elenco delle limitazioni e restrizioni, vedere Collegamento e scollegamento di un database (SQL Server).

Autorizzazioni

Richiede l'adesione al ruolo predefinito del database db_owner.

Usare SQL Server Management Studio

Prima di spostare un database

Se si sposta un database, prima di scollegarlo dall'istanza di SQL Server esistente, usare la pagina Proprietà database per esaminare i file associati al database e i relativi percorsi correnti.

  1. In Esplora oggetti di SQL Server Management Studio connettersi all'istanza del motore di database di SQL Server e quindi espandere l'istanza.

  2. Espandere Databasee selezionare il nome del database utente che si desidera scollegare.

  3. Fare clic con il pulsante destro del mouse sul database e selezionare Proprietà. Selezionare la pagina File ed esaminare le voci nella tabella File di database:.

Assicurarsi di tenere conto di tutti i file associati al database prima di scollegare, spostare e collegare. Procedere quindi con i passaggi di scollegamento nella sezione successiva. Per altre informazioni sul rendere visibile il database nella nuova posizione, vedere Collegare un database.

Scollegare un database

  1. In Esplora oggetti di SQL Server Management Studio connettersi all'istanza del motore di database di SQL Server e quindi espandere l'istanza.

  2. Espandere Databasee selezionare il nome del database utente che si desidera scollegare.

  3. Fare clic con il pulsante destro del mouse sul nome di database, scegliere Attività e quindi selezionare Scollegare. Verrà visualizzata la finestra di dialogo Scollega database .

    • Database da scollegare: Consente di visualizzare i database da scollegare.

    • Database Name: Consente di visualizzare il nome del database da scollegare.

    • Interrompi connessioni: Consente di interrompere le connessioni al database specificato.

      Nota

      Non è possibile scollegare un database con connessioni attive.

    • Aggiornare le statistiche: Per impostazione predefinita, con l'operazione di scollegamento è possibile mantenere eventuali statistiche di ottimizzazione non aggiornate prima di scollegare il database. Per aggiornare le statistiche di ottimizzazione esistenti, selezionare questa casella di controllo.

    • Mantenere cataloghi full-text: Per impostazione predefinita, con l'operazione di scollegamento è possibile mantenere eventuali cataloghi full-text associati al database. Per rimuoverli, deselezionare la casella di controllo Mantieni cataloghi full-text . Questa opzione viene visualizzata solo quando si aggiorna un database da SQL Server 2005 (9.x).

    • Stato: Consente di visualizzare uno degli stati seguenti: Pronto o Non pronto.

    • Messaggio: Nella colonna Messaggio possono essere visualizzate informazioni sul database simili alle seguenti:

      • Quando un database è coinvolto nella replica, lo Stato è Non pronto e nella colonna Messaggio viene visualizzato Database replicato.

      • Quando per un database esistono una o più connessioni attive, il valore di Stato è Non pronto e la colonna Messaggio visualizza <>Connessioni attive. Ad esempio: 1 connessione attiva. Prima di poter sollegare il database è necessario disconnettere tutte le connessioni attive selezionando Interrompi connessioni.

      Per ottenere ulteriori informazioni su un messaggio, selezionare il testo del collegamento ipertestuale per aprire Monitoraggio attività.

  4. Quando si è pronti per scollegare il database, selezionare OK.

Nota

Il database scollegato rimarrà visibile nel nodo Database di Esplora oggetti fino all'aggiornamento della vista. Per aggiornare la vista in qualsiasi momento, selezionare il riquadro Esplora oggetti, scegliere Vista dalla barra dei menu e quindi Aggiorna.

Usare Transact-SQL

Prima di spostare un database

Se si sposta un database, prima di scollegarlo dall'istanza di SQL Server esistente, usare la sys.database_files vista del catalogo di sistema per esaminare i file associati al database e i relativi percorsi correnti. Per altre informazioni, vedere sys.database_files (Transact-SQL).

  1. In SQL Server Management Studio selezionare Nuova query per aprire l'editor di query.

  2. Copiare lo script Transact-SQL seguente nell'editor di query e selezionare Esegui. Lo script consente di visualizzare la posizione dei file fisici del database. Assicurarsi di tenere conto di tutti i file associati al database prima di scollegare, spostare e collegare.

    USE [database_name]
    GO
    
    SELECT type_desc, name, physical_name
    FROM sys.database_files;
    

Assicurarsi di tenere conto di tutti i file associati al database prima di scollegare, spostare e collegare. Procedere quindi con i passaggi di scollegamento nella sezione successiva. Per altre informazioni sul rendere visibile il database nella nuova posizione, vedere Collegare un database.

Scollegare un database

  1. Connettersi al motore di database di .

  2. Nella barra Standard selezionare Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra di query e selezionare Esegui. In questo esempio il database AdventureWorks2022 viene sollegato con l'opzione skipchecks impostata su true. Per altre informazioni, consultare sp_detach_db.

    EXEC sp_detach_db 'AdventureWorks2022', 'true';