Informazioni sull'importazione e l'esportazione in blocco di dati (SQL Server)
Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Analytics Platform System (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. | Sì | Sì |
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. | Sì | 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. | Sì | 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. | Sì | Sì |
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.