Condividi tramite


Destinazione OLE DB

Data aggiornamento: 12 dicembre 2006

La destinazione OLE DB consente di caricare dati in un'ampia gamma di database compatibili con OLE DB, tramite una tabella o vista di database oppure un comando SQL. L'origine OLE DB, ad esempio, può caricare dati in tabelle di database Microsoft Office Access e SQL Server 2005.

[!NOTA] Per caricare dati in un'origine dei dati che utilizza Microsoft Office Excel 2007, utilizzare una destinazione OLE DB. Non è possibile utilizzare una destinazione Excel per caricare dati in un'origine dei dati Excel 2007. Per ulteriori informazioni, vedere Gestione connessione OLE DB. Per caricare dati in un'origine dei dati che utilizza Microsoft Office Excel 2003 o versione precedente, utilizzare una destinazione Excel. Per ulteriori informazioni, vedere Destinazione Excel.

Sono disponibili cinque diverse modalità di accesso ai dati per il caricamento dei dati:

  • Vista o tabella. È possibile specificare una vista o tabella esistente o creare una nuova tabella.
  • Vista o tabella che utilizza opzioni per il caricamento rapido. È possibile specificare una tabella esistente o creare una nuova tabella.
  • Vista o tabella specificata in una variabile.
  • Vista o tabella specificata in una variabile che utilizza opzioni per il caricamento rapido.
  • Risultato di un'istruzione SQL.

[!NOTA] La destinazione OLE DB non supporta parametri. Per eseguire un'istruzione INSERT con parametri, utilizzare la trasformazione Comando OLE DB. Per ulteriori informazioni, vedere Trasformazione Comando OLE DB.

Quando la destinazione OLE DB carica dati che utilizzano caratteri DBCS (Double-Byte Character Set), se la modalità di accesso ai dati non utilizza l'opzione per il caricamento rapido e la gestione connessione OLE DB utilizza il provider Microsoft OLE DB per SQL Server (SQLOLEDB), i dati potrebbero essere danneggiati. Per garantire l'integrità dei dati DBCS è necessario configurare la gestione connessione OLE DB in modo da utilizzare SQL Native Client oppure utilizzare una delle modalità di accesso con caricamento rapido, ovvero Tabella o vista - Caricamento rapido o Variabile nome vista o nome tabella - Caricamento rapido. Entrambe le opzioni sono disponibili nella finestra di dialogo Editor destinazione OLE DB. Durante la programmazione del modello di oggetti di SSIS è necessario impostare la proprietà AccessMode su OpenRowset Using FastLoad o su OpenRowset Using FastLoad From Variable.

[!NOTA] Se si utilizza la finestra di dialogo Editor destinazione OLE DB in Progettazione SSIS per creare la tabella di destinazione in cui la destinazione OLE DB inserisce i dati, sarà necessario selezionare la nuova tabella manualmente. È necessario eseguire la selezione manuale quando un provider OLE DB, ad esempio il provider Microsoft OLE DB per DB2, aggiunge automaticamente gli identificatori di schema al nome della tabella.

[!NOTA] A seconda del tipo di destinazione, può essere necessario modificare l'istruzione CREATE TABLE generata dalla finestra di dialogo Editor destinazione OLE DB. Alcune destinazioni non supportano ad esempio i tipi di dati utilizzati dall'istruzione CREATE TABLE.

Per connettersi a un'origine dei dati questa destinazione utilizza una gestione connessione OLE DB, che specifica il provider OLE DB da utilizzare. Per ulteriori informazioni, vedere Gestione connessione OLE DB.

Un progetto di Integration Services fornisce inoltre l'oggetto origine dei dati da cui è possibile creare una gestione connessione OLE DB, rendendo disponibili origini dei dati e viste origine dati alla destinazione OLE DB. Per ulteriori informazioni, vedere Origine dei dati (SSIS) e Vista origine dati (SSIS).

Una destinazione OLE DB include i mapping tra le colonne di input e quelle nell'origine dei dati della destinazione. Non è necessario eseguire il mapping delle colonne di input a tutte le colonne di destinazione ma, a seconda delle proprietà delle colonne di destinazione, se alle colonne di destinazione non corrispondono colonne di input è possibile che vengano generati errori. Se ad esempio una colonna di destinazione non consente valori Null, sarà necessario eseguire il mapping di una colonna di input a tale colonna. È inoltre necessario che i tipi di dati delle colonne associate siano compatibili. Non è ad esempio possibile eseguire il mapping di una colonna di input con un tipo di dati string a una colonna di destinazione con un tipo di dati numeric.

La destinazione OLE DB include un input regolare e un output degli errori.

Opzioni per il caricamento rapido

Se la destinazione OLE DB utilizza una modalità di accesso ai dati con caricamento rapido, nell'interfaccia utente della destinazione, ovvero in Editor destinazione OLE DB, sarà possibile specificare le opzioni di caricamento rapido seguenti:

  • È possibile mantenere i valori Identity del file di dati importato o utilizzare valori univoci assegnati da SQL Server.
  • È possibile mantenere i valori Null durante le operazioni di caricamento di massa.
  • È possibile controllare i vincoli sulla tabella o vista di destinazione durante le operazioni di importazione di massa.
  • È possibile acquisire un blocco a livello di tabella per la durata dell'operazione di caricamento di massa.
  • È possibile specificare il numero di righe nel batch e le dimensioni del commit.

Alcune opzioni di caricamento rapido sono archiviate in proprietà specifiche della destinazione OLE DB. La proprietà FastLoadKeepIdentity specifica ad esempio se mantenere i valori Identity, la proprietà FastLoadKeepNulls specifica se mantenere i valori Null e la proprietà FastLoadMaxInsertCommitSize specifica il numero di righe di cui eseguire il commit come operazione batch. Altre opzioni di caricamento rapido sono archiviate in un elenco delimitato da virgole nella proprietà FastLoadOptions. Se la destinazione OLE DB utilizza tutte le opzioni di caricamento rapido archiviate in FastLoadOptions ed elencate nella finestra di dialogo Editor destinazione OLE DB, il valore della proprietà verrà impostato su TABLOCK, CHECK_CONSTRAINTS, ROWS_PER_BATCH=1000. Il valore 1000 indica che la destinazione è configurata per l'utilizzo di batch di 1000 righe.

[!NOTA] Un eventuale esito negativo della verifica dei vincoli nella destinazione causa l'interruzione dell'intero batch di righe definito da FastLoadMaxInsertCommitSize.

Oltre alle opzioni di caricamento rapido visualizzate nella finestra di dialogo Editor destinazione OLE DB, è possibile configurare la destinazione OLE DB in modo da utilizzare le seguenti opzioni per il caricamento di massa digitando tali opzioni nella proprietà FastLoadOptions della finestra di dialogo Editor avanzato.

Opzione per il caricamento rapido

Descrizione

KILOBYTES_PER_BATCH

Specifica le dimensioni in kilobyte del batch da inserire. La sintassi dell'opzione è KILOBYTES_PER_BATCH = <positive integer value**>**.

FIRE_TRIGGERS

Specifica se attivare o meno i trigger sulla tabella inserita. La sintassi dell'opzione è la seguente: FIRE_TRIGGERS. La presenza dell'opzione indica che i trigger vengono attivati.

ORDER

Specifica la modalità con ordinare i dati in input. La sintassi dell'opzione è la seguente: ORDER <column name> ASC|DESC. È possibile elencare qualsiasi numero di colonne e l'indicazione del tipo di ordinamento è facoltativa. Se il tipo di ordinamento viene omesso, l'operazione di inserimento verrà eseguita presupponendo che i dati non siano ordinati.

ms141237.note(it-it,SQL.90).gifNota:

Le prestazioni sono migliori se i dati da caricare vengono ordinati in base all'indice cluster della tabella.

Anche se in genere vengono in genere digitate in maiuscolo, per le parole chiave Transact-SQL non viene fatta distinzione tra maiuscole e minuscole.

Per ulteriori informazioni sulle opzioni di caricamento rapido, vedere BULK INSERT (Transact-SQL).

Risoluzione dei problemi relativi alla destinazione OLE DB

Da Microsoft SQL Server 2005 Service Pack 2 (SP2) è possibile registrare le chiamate eseguite dalla destinazione OLE DB a provider di dati esterni. Questa nuova funzionalità di registrazione può essere utilizzata per risolvere i problemi relativi al salvataggio di dati in origini dei dati esterne da parte della destinazione OLE DB. Per registrare le chiamate eseguite dalla destinazione OLE DB a un provider di dati esterno, abilitare la registrazione dei pacchetti e selezionare l'evento Diagnostic a livello del pacchetto. Per ulteriori informazioni, vedere Risoluzione dei problemi relativi all'esecuzione di pacchetti.

Configurazione della destinazione OLE DB

È possibile impostare le proprietà tramite Progettazione SSIS o a livello di programmazione.

Per ulteriori informazioni sulle proprietà che è possibile impostare nella finestra di dialogo Editor destinazione OLE DB, fare clic su uno degli argomenti seguenti:

Nella finestra di dialogo Editor avanzato sono disponibili le proprietà che è possibile impostare a livello di programmazione. Per ulteriori informazioni sulle proprietà che è possibile impostare nella finestra di dialogo Editor avanzato o a livello di programmazione, fare clic su uno degli argomenti seguenti:

Per ulteriori informazioni sulle procedure per l'impostazione delle proprietà, fare clic su uno degli argomenti seguenti:

Vedere anche

Concetti

Origine OLE DB
Variabili in Integration Services
Creazione del flusso di dati di un pacchetto

Altre risorse

Destinazioni di Integration Services

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione Cronologia

12 dicembre 2006

Nuovo contenuto:
  • Aggiunta di una nota sull'utilizzo di origini dei dati Excel 2007.
  • Aggiunta di informazioni relative a nuovi messaggi di registrazione di SQL Server 2005 SP2 che consentono agli utenti di risolvere i problemi relativi alle chiamate che la destinazione esegue a provider di dati esterni.

17 luglio 2006

Contenuto modificato:
  • Aggiunta dell'indicazione che errori relativi ai vincoli nella destinazione provocano un errore del batch.
  • Correzione di un errore nel nome della proprietà.

5 dicembre 2005

Contenuto modificato:
  • Aggiunta di ulteriori informazioni sulle opzioni di caricamento rapido.
  • Aggiunta della nota relativa alla necessità di modificare la definizione della tabella generata.