Informazioni sull'importazione ed esportazione bulk di dati (SQL Server)

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse AnalyticsPiattaforma di strumenti analitici (PDW)

SQL Server supporta l'esportazione in blocco dei dati (dati in blocco) da una tabella di SQL Server e l'importazione in blocco dei dati in una tabella o in una vista non partizionata di SQL Server.

  • Per esportazione in blocco si intende la copia di dati da una tabella di SQL Server a un file di dati.
  • Per importazione in blocco si intende il caricamento di dati da un file a una tabella di SQL Server. È ad esempio possibile esportare dati da un'applicazione Microsoft Excel a un file di dati e quindi importare tali dati in blocco in una tabella di SQL Server.

Metodi di importazione ed esportazione bulk di dati

SQL Server supporta l'esportazione in blocco di dati da una tabella di SQL Server e l'importazione in blocco di dati in una tabella o in una vista non partizionata di SQL Server. Sono disponibili le modalità di base seguenti.

metodo Descrizione Importazione dei dati Esportazione dei dati
utilità bcp Utilità della riga di comando (Bcp.exe) che esegue l'esportazione e l'importazione bulk dei dati e genera file di formato.
Istruzione BULK INSERT Un'istruzione Transact-SQL che importa i dati direttamente da un file di dati a una tabella di database o una vista non partizionata. No
INSERT ... Istruzione SELECT * FROM OPENROWSET(BULK...) Un'istruzione Transact-SQL che usa il provider bulk per set di righe OPENROWSET per eseguire l'importazione in blocco dei dati in una tabella di SQL Server specificando la funzione OPENROWSET(BULK...) per selezionare i dati in un'istruzione INSERT. No
Importazione/Esportazione guidata SQL Server La procedura guidata crea pacchetti semplici che importano ed esportano dati tra numerosi formati di dati comuni, inclusi database, fogli di calcolo e file di testo.

Importante

Per le regole relative all'uso di un file con valori delimitati da virgole (CSV) come file di dati per un'importazione bulk di dati in SQL Server, vedere Preparare i dati per l'importazione o l'esportazione bulk (SQL Server).

Nota

Per l'importazione e l'esportazione di file delimitati, Azure Synapse Analytics supporta solo l'utilità bcp.

File di formato

utilità bcp, BULK INSERTe INSERT ... SELECT * FROM OPENROWSET(BULK...) supportano l'uso di un file di formato specializzato che archivia le informazioni sul formato di ogni campo in un file di dati. Un file di formato può inoltre contenere informazioni sulla tabella di SQL Server corrispondente. Il file di formato può essere usato per specificare tutte le informazioni sul formato necessarie per l'esportazione e l'importazione in blocco di dati da e verso un'istanza di SQL Server.

Importante

Non è possibile usare BCP per importare o esportare i dati in Archiviazione BLOB di Azure nel database SQL di Azure. Usare BULK INSERT o OPENROWSET per eseguire l'importazione o l'esportazione in Archiviazione BLOB di Azure.

I file di formato costituiscono un modo flessibile per interpretare i dati così come presenti nel file di dati durante l'importazione, nonché per formattare i dati nel file di dati durante l'esportazione. Grazie a questa flessibilità, non è necessario scrivere codice specifico per interpretare i dati o riformattarli in base ai requisiti specifici di SQL Server o dell'applicazione esterna. Ad esempio, se si esegue l'esportazione bulk dei dati da caricare in un'applicazione che richiede valori separati da virgola, è possibile utilizzare un file di formato per inserire virgole come caratteri di terminazione del campo nei dati esportati.

SQL Server supporta due tipi di file di formato: file di formato XML e file di formato non XML.

L' utilità bcp è il solo strumento in grado di generare un file di formato. Per altre informazioni, vedere Creare un file di formato (SQL Server). Per altre informazioni sui file di formato, vedere File di formato per l'importazione o l'esportazione di dati (SQL Server).

Nota

Nei casi in cui un file di formato non viene fornito durante un'operazione di esportazione o importazione bulk, è possibile ignorare la formattazione predefinita nella riga di comando.

Argomenti correlati
Preparazione dei dati per l'importazione o l'esportazione bulk (SQL Server)
Formati di dati per l'importazione o l'esportazione bulk (SQL Server)
 ● Usare il formato nativo per importare o esportare dati (SQL Server)
 ● Usare il formato carattere per importare o esportare dati (SQL Server)
 ● Usare il formato nativo Unicode per importare o esportare dati (SQL Server)
 ● Usare il formato carattere Unicode per importare o esportare dati (SQL Server)
 ● Importare dati in formato nativo e carattere da versioni precedenti di SQL Server
Impostazione dei formati di dati per la compatibilità mediante bcp (SQL Server)
 ● Specificare il tipo di archiviazione di file tramite bcp (SQL Server)
 ● Specificare la lunghezza del prefisso nei file di dati tramite bcp (SQL Server)
 ● Specificare la lunghezza di campo tramite bcp (SQL Server)
 ● Specificare i caratteri di terminazione del campo e della riga (SQL Server)
Mantenimento dei valori Null o utilizzo dei valori predefiniti durante un'importazione bulk (SQL Server)
Mantenere i valori Identity durante l'importazione bulk dei dati (SQL Server)
File di formato per l'importazione o l'esportazione di dati (SQL Server)
 ● Creare un file di formato (SQL Server)
 ● Usare un file di formato per l'importazione bulk dei dati (SQL Server)
 ● Usare un file di formato per ignorare una colonna di una tabella (SQL Server)
 ● Usare un file di formato per ignorare un campo dati (SQL Server)
 ● Usare un file di formato per eseguire il mapping tra le colonne di tabella e i campi del file di dati (SQL Server)

Ulteriori informazioni