Procedura: Collegamento di un file di database a SQL Server Express

È possibile collegare un file di database a un'istanza di SQL Server 2005 Express Edition (SQL Server Express) utilizzando lo strumento sqlcmd. Ad esempio, se sono disponibili file esistenti di un'installazione precedente di SQL Server Express, è possibile collegare tali file a una nuova installazione di SQL Server Express. In modo analogo, se si desidera ripristinare un database danneggiato da una copia di backup, è possibile collegare il file di database del backup.

Nota sulla sicurezzaNota sulla sicurezza

È consigliabile non collegare o ripristinare database provenienti da fonti sconosciute o non attendibili. Tali database possono contenere codice dannoso che potrebbe eseguire codice Transact-SQL indesiderato o causare errori modificando lo schema o la struttura fisica di database. Prima di utilizzare un database proveniente da una fonte sconosciuta o non attendibile, eseguire DBCC CHECKDB nel database in un server non di produzione e quindi esaminare il codice del database, ad esempio le stored procedure o altro codice definito dall'utente.

Per collegare un file di database

  1. Aprire il prompt dei comandi nel server.

  2. Dal prompt dei comandi connettersi a un'istanza di SQL Server tramite il comando sqlcmd seguente:

    sqlcmd -S Server\Instance
    

    Dove Server è il nome del computer e Instance è il nome dell'istanza.

  3. Dopo aver attivato la connessione digitare i comandi seguenti:

    USE [master]
    GO
    CREATE DATABASE [database_name] ON 
    ( FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\<database name>.mdf' ),
    ( FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\<database name>.ldf' )
     FOR ATTACH ;
    GO
    

    Dove database_name è il nome del database che si desidera collegare, FileName è il percorso e il nome del file del database e del file di log, mentre FOR ATTACH specifica che il database verrà creato collegando un insieme esistente di file del sistema operativo.

  4. Per verificare che il database sia collegato, digitare i due comandi seguenti:

    select name from sys.databases
    go
    
  5. Lo strumento sqlcmd visualizza i nomi di tutti i database collegati all'istanza corrente di SQL Server Express. Nell'elenco dovrebbe essere visualizzato il nome di database specificato nel passaggio 3.

Nota

Per ulteriori informazioni sul collegamento di un database, vedere Scollegamento e collegamento di database e CREATE DATABASE (Transact-SQL) nella documentazione online di SQL Server.