Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
È possibile usare il comando bcp , BULK INSERT l'istruzione o la funzione OPENROWSET(BULK) per importare in blocco i dati solo da un file di dati.
Nota
È possibile scrivere un'applicazione personalizzata che esegua l'importazione bulk di dati da oggetti diversi da un file di testo. Per importare dati in blocco dai buffer della memoria, usare le estensioni bcp dell'API (Application Programming Interface) SQL Server Native Client (ODBC) o dell'interfaccia IRowsetFastLoad di OLE DB. Per importare dati in blocco da una tabella dati C#, usare l'API della copia bulk ADO.NET, SqlBulkCopy.
Nota
L'importazione bulk di dati in una tabella remota non è supportata.
Quando si esegue un'importazione bulk di dati da un file di dati in un'istanza di Microsoft SQL Server, usare le linee guida seguenti:
Ottenere le autorizzazioni necessarie per l'account utente in uso.
L'account utente in cui si usa l'utilità bcp , l'istruzione BULK INSERT o l'istruzione
INSERT ... SELECT * FROM OPENROWSET(BULK...)deve disporre delle autorizzazioni necessarie per la tabella, assegnate dal proprietario della tabella. Per altre informazioni sulle autorizzazioni richieste da ogni metodo, vedere Utilità bcp, OPENROWSET (BULK) e BULK INSERT (Transact-SQL).Utilizzare il modello di recupero con registrazione minima delle operazioni bulk.
Questa linea guida si applica a un database che utilizza il modello di recupero completo. Il modello di recupero a registrazione minima è utile quando si eseguono operazioni in blocco su una tabella non indicizzata (un heap). L'utilizzo del modello di recupero con registrazione minima contribuisce a evitare l'esaurimento dello spazio nel log delle transazioni, perché questo modello di recupero non registra gli inserimenti di righe nel log. Per ulteriori informazioni sul modello di recupero con registrazione minima, vedere Modelli di recupero (SQL Server).
Si consiglia di modificare il database affinché utilizzi il modello di recupero con registrazione minima immediatamente prima dell'operazione di importazione bulk. Subito dopo, si dovrebbe reimpostare il database sul modello di recupero completo. Per altre informazioni, vedere Visualizzazione o modifica del modello di recupero di un database (SQL Server).
Nota
Per altre informazioni sulla limitazione della registrazione durante le operazioni di importazione in blocco, vedere Prerequisiti per la registrazione minima nell'importazione in blocco.
Esegui il backup dopo l'importazione in blocco dei dati.
Per un database che utilizza il modello di recupero semplice, è consigliabile eseguire un backup completo o differenziale al termine dell'operazione di importazione in blocco. Per altre informazioni, vedere Creare un backup completo del database (SQL Server) o Creare un backup differenziale del database (SQL Server).
Per il modello di ripristino con registrazione minima o per il modello di ripristino completo, è sufficiente un backup del log. Per altre informazioni, vedere Backup di log delle transazioni (SQL Server).
Eliminare gli indici della tabella al fine di migliorare le prestazioni per le importazioni bulk di grandi dimensioni.
Questa linea guida riguarda i casi in cui viene importata una grande quantità di dati rispetto alla quantità di dati già presente nella tabella. In tal caso, l'eliminazione degli indici della tabella prima dell'operazione di importazione bulk può consentire un notevole miglioramento delle prestazioni.
Nota
Se si sta caricando una quantità di dati ridotta rispetto a quella già presente nella tabella, l'eliminazione degli indici risulta controproducente. Il tempo necessario per ricompilare gli indici potrebbe essere superiore a quello risparmiato durante l'operazione di importazione bulk.
Individuare e rimuovere i caratteri nascosti nel file di dati.
In molte utilità ed editor di testo vengono visualizzati i caratteri nascosti, che in genere sono presenti nella parte finale del file di dati. Durante un'operazione di importazione in blocco, i caratteri nascosti in un file di dati ASCII possono causare problemi, provocando l'errore "è stato trovato un carattere NULL imprevisto". L'individuazione e la rimozione di tutti i caratteri nascosti dovrebbero consentire di risolvere questo problema.
Vedi anche
Importare ed esportare dati in blocco tramite l'utilità bcp (SQL Server)
Importare grandi quantità di dati usando BULK INSERT o OPENROWSET(BULK...) (SQL Server)
Utilità BCP
BULK INSERT (Transact-SQL)
Formati dei dati per l'importazione o l'esportazione in blocco (SQL Server)
OPENROWSET (Transact-SQL)