Importare dati in formato nativo e carattere da versioni precedenti di SQL Server
In SQL Server 2012 è possibile utilizzare bcp per importare dati in formato nativo e carattere da SQL Server 2000, SQL Server 2005 o SQL Server 2008, utilizzando l'opzione -V. Se si utilizza l'opzione -V, in SQL Server 2012 vengono utilizzati tipi di dati della versione precedente specificata di SQL Server e il formato del file di dati corrisponderà al formato della versione precedente in questione.
Per specificare una versione di SQL Server precedente per un file di dati, utilizzare l'opzione -V con uno dei qualificatori seguenti:
Versione di SQL Server |
Qualificatore |
---|---|
SQL Server 2000 |
-V 80 |
SQL Server 2005 |
-V 90 |
SQL Server 2008 |
-V 100 |
Interpretazione dei tipi dati introdotti in SQL Server 2005
SQL Server 2005 e versioni successive supportano alcuni nuovi tipi. Se si desidera importare un nuovo tipo di dati in una versione precedente di SQL Server, è necessario archiviarlo in un formato leggibile dai client bcp precedenti. Nella tabella seguente sono indicate le conversioni dei nuovi tipi di dati SQL Server 2005 necessarie per assicurare la compatibilità con le versioni precedenti di SQL Server.
Nuovi tipi di dati in SQL Server 2005 |
Tipi di dati compatibili nella versione 6x |
Tipi di dati compatibili nella versione 70 |
Tipi di dati compatibili nella versione 80 |
---|---|---|---|
bigint |
decimal |
decimal |
* |
sql_variant |
text |
nvarchar(4000) |
* |
varchar(max) |
text |
text |
text |
nvarchar(max) |
ntext |
ntext |
ntext |
varbinary(max) |
image |
image |
image |
XML |
ntext |
ntext |
ntext |
UDT1 |
image |
image |
image |
* Questo tipo viene supportato a livello nativo.
UDT 1 indica un tipo definito dall'utente.
Esportazione da SQL Server 2005 e versioni successive
Quando si esegue l'esportazione bulk di dati da SQL Server 2005 o versioni successive mediante l'opzione –V 80, i dati nvarchar(max), varchar(max), varbinary(max), XML e il tipo di dati definiti dall'utente (UDT) in modalità nativa vengono archiviati con un prefisso a 4 byte come i dati text, image e ntext, anziché con un prefisso a 8 byte che rappresenta l'impostazione predefinita per SQL Server 2005 e versioni successive.
Copia dei valori di data
bcp consente di utilizzare l'API della copia bulk ODBC. Pertanto, per importare i valori di dati in SQL Server, bcp consente di utilizzare il formato di data ODBC (yyyy-mm-dd hh:mm:ss[.f...]).
Il comando bcp esporterà sempre i file di dati in formato carattere utilizzando il formato predefinito ODBC per i valori datetime e smalldatetime. Ad esempio, per una colonna datetime contenente la data 12 Aug 1998 verrà eseguita la copia bulk in un file di dati come stringa di caratteri 1998-08-12 00:00:00.000.
Importante |
---|
Quando si importano i dati in un campo smalldatetime utilizzando il comando bcp, verificare che il valore relativo ai secondi sia 00.000; in caso contrario, l'operazione non riuscirà. Il tipo di dati smalldatetime contiene solo valori approssimati al minuto più vicino. In questa istanza, le istruzioni BULK INSERT e INSERT ... SELECT * FROM OPENROWSET(BULK...) verranno eseguite ma il valore dei secondi verrà troncato. |
Attività correlate
Per utilizzare formati di dati per l'importazione o l'esportazione bulk
Utilizzo del formato carattere per l'importazione o l'esportazione di dati (SQL Server)
Utilizzo del formato nativo per importare o esportare dati (SQL Server)
Utilizzo del formato carattere Unicode per l'importazione o l'esportazione di dati (SQL Server)
Utilizzare il formato Unicode nativo per importare o esportare dati (SQL Server)
[Top]
Vedere anche
Riferimento
Altre risorse
Compatibilità con le versioni precedenti del Motore di database di SQL Server