Condividi tramite


Copia di database da SQL Server 7.0 o versioni precedenti

In questo argomento viene illustrato come eseguire la migrazione dei database da versioni obsolete di SQL Server nei casi in cui non è possibile aggiornarli alla versione corrente.

Nota

Quando si installa SQL Server 2008 R2, eventuali database di SQL Server 2000 o SQL Server 2005 esistenti vengono aggiornati automaticamente (i database di SQL Server 2008 sono compatibili con SQL Server 2008 R2). Per copiare un database aggiornato, è possibile utilizzare uno dei metodi di copia supportati per i database di SQL Server 2008. Per ulteriori informazioni, vedere Copia di database in altri server.

Database di SQL Server 7.0

Per convertire un database di SQL Server versione 7.0 in SQL Server 2008 R2, è possibile utilizzare uno dei seguenti metodi:

  • Aggiornare un database di SQL Server 7.0 a SQL Server 2000 o SQL Server 2005 collegando il database a un'esecuzione dell'istanza. In seguito è possibile aggiornare il database a SQL Server 2008 R2. Questo è in genere il metodo consigliato.

    Per informazioni sull'utilizzo del collegamento per aggiornare un database SQL Server 2000 o SQL Server 2005, vedere Procedura: Aggiornamento di un database utilizzando le operazioni di scollegamento e collegamento (Transact-SQL).

  • Utilizzare l'Importazione/Esportazione guidata SQL Server per copiare i dati tra più istanze di SQL Server. Questa procedura guidata può essere utilizzata con qualsiasi origine e destinazione per cui è presente un provider, anche se potrebbero verificarsi problemi di conversione dei dati, a seconda dell'origine dati. Per ulteriori informazioni, vedere Utilizzo dell'Importazione/Esportazione guidata SQL Server per lo spostamento dei dati.

  • Eseguire la migrazione dei dati da un database creato in SQL Server 7.0 come indicato di seguito:

    1. Utilizzare la versione 7.0 di bcp per esportare i dati in un file di dati tramite un comando bcpout.

    2. Utilizzare la versione di bcp.exe in SQL Server 2008 R2 (versione 10.50) di bcp per importare i dati dal file di dati mediante un comando bcpin. Se il file di dati contiene formati di dati nativi, specificare le opzioni -V70 e –n, che indicano all'operazione bcp in di utilizzare i tipi di dati nativi di SQL Server 7.0.

    Per ulteriori informazioni, vedere Importazione di dati in formato nativo e carattere da versioni precedenti di SQL Server.

Database di SQL Server 6.0 o SQL Server 6.5

Per eseguire la migrazione dei dati da un database di SQL Server versione 6.0 o SQL Server versione 6.5, utilizzare il comando bcp della versione specifica di SQL Server per esportare i dati in un file di dati in modalità carattere (bcpout). È possibile quindi importare i dati di tipo carattere in un database di SQL Server 2008 R2. Poiché i formati di dati nativi di SQL Server 6.0 e SQL Server 6.5 tuttavia non sono supportati da SQL Server 2008 R2, la versione di bcp.exe in SQL Server 2008 R2 non supporta l'opzione della riga di comando -6 o le opzioni 60 e 65 dell'opzione della riga di comando –V.

Nota

Il formato dei backup di database creati utilizzando SQL Server 6.5 o versione precedente non è compatibile e non è pertanto possibile ripristinare tali backup in SQL Server 2005 e versioni successive.

Livello di compatibilità del database dopo l'aggiornamento

I livelli di compatibilità dei database tempdb, model, msdb e Resource sono impostati su 100 dopo l'aggiornamento. Il database di sistema master mantiene il livello di compatibilità che aveva prima dell'aggiornamento, a condizione che tale livello non sia minore di 80. Se il livello di compatibilità di master è minore di 80 prima dell'aggiornamento, viene impostato su 80 dopo l'aggiornamento. I nuovi database utente erediteranno il livello di compatibilità del database modello.

Se il livello di compatibilità di un database utente è 80 o 90 prima dell'aggiornamento, rimane invariato dopo l'aggiornamento. Se il livello di compatibilità è 70 o meno prima dell'aggiornamento, nel database aggiornato viene impostato su 80, ovvero sul livello di compatibilità più basso supportato in SQL Server 2008 R2.

Nota

Per informazioni sull'utilizzo di un database di SQL Server 7.0, SQL Server 2000 o SQL Server 2005 in SQL Server 2008 R2, vedere Livello di compatibilità ALTER DATABASE (Transact-SQL).