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.
Nell'argomento Miglioramento dei caricamenti incrementali con Change Data Capture, il diagramma illustra un pacchetto di base che esegue un caricamento incrementale in una sola tabella. Tuttavia, il caricamento di una tabella non è altrettanto comune come la necessità di eseguire un caricamento incrementale di più tabelle.
Quando si esegue un caricamento incrementale di più tabelle, è necessario eseguire alcuni passaggi una volta per tutte le tabelle e altri passaggi devono essere ripetuti per ogni tabella di origine. Sono disponibili più opzioni per implementare questi passaggi in Integration Services:
Usare un pacchetto padre e pacchetti figlio.
Utilizzare più attività di flusso di dati in un unico pacchetto.
Caricamento di più tabelle tramite un pacchetto padre e più pacchetti figlio
È possibile usare un pacchetto padre per eseguire questi passaggi che devono essere eseguiti una sola volta. I pacchetti figlio eseguiranno questi passaggi che devono essere eseguiti per ogni tabella di origine.
Per creare un pacchetto padre che esegue questi passaggi che devono essere eseguiti una sola volta
Creare un pacchetto principale.
Nel flusso di controllo, utilizzare l'Attività Esegui SQL o le espressioni di Integration Services per calcolare gli endpoint.
Per un esempio di come calcolare gli endpoint, vedere Specificare un intervallo di dati delle modifiche.
Se necessario, usare un contenitore del ciclo For per posticipare l'esecuzione fino a quando i dati delle modifiche per il periodo selezionato sono pronti.
Per un esempio di contenitore Ciclo For, vedere Determinare se i dati delle modifiche sono pronti.
Usare multipli attività di esecuzione pacchetto per eseguire pacchetti secondari per ogni tabella da caricare. Trasmettere gli endpoint calcolati nel pacchetto padre a ogni pacchetto figlio tramite variabili del pacchetto padre.
Per altre informazioni, vedere Attività Esegui pacchetto e Usare i valori delle variabili e dei parametri in un pacchetto figlio.
Per creare pacchetti secondari per eseguire i passaggi necessari da effettuare per ciascuna tabella di origine.
Per ogni tabella di origine, creare un pacchetto figlio.
Nel flusso di controllo, utilizzare un'attività Script o un'attività Esegui SQL per assemblare l'istruzione SQL che verrà usata per interrogare le modifiche.
Per un esempio di come assemblare la query, vedere Preparare la query per i dati delle modifiche.
Usare un'attività di Flusso di dati singola in ogni pacchetto figlio per caricare i dati modificati e applicarli alla destinazione. Configurare il flusso di dati come descritto nei passaggi seguenti:
Nel flusso di dati usare un componente di origine per eseguire una query sulle tabelle delle modifiche per le modifiche che rientrano negli endpoint selezionati.
Per un esempio di come eseguire query sulle tabelle delle modifiche, vedere Recuperare e comprendere i dati delle modifiche.
Utilizzare una trasformazione di suddivisione condizionale per indirizzare gli inserimenti, gli aggiornamenti e le eliminazioni verso output diversi per una corretta elaborazione.
Per un esempio di come configurare questa trasformazione per indirizzare l'output, vedere Elaborare inserimenti, aggiornamenti ed eliminazioni.
Utilizzare un componente di destinazione per applicare gli inserimenti alla destinazione. Utilizzare le trasformazioni dei comandi OLE DB con istruzioni UPDATE e DELETE con parametri per applicare aggiornamenti ed eliminazioni alla destinazione.
Per un esempio di come usare questa trasformazione per applicare aggiornamenti ed eliminazioni, vedere Applicare le modifiche alla destinazione.
Caricamento di più tabelle tramite più attività del flusso di dati in un singolo pacchetto
In alternativa, è possibile usare un singolo pacchetto che contiene un'attività Flusso di dati separata per ogni tabella di origine da caricare.
Per caricare più tabelle usando più attività flusso di dati in un singolo pacchetto
Creare un singolo pacchetto.
Nel flusso di controllo, usare un'attività di esecuzione SQL o le espressioni di Integration Services per calcolare gli endpoint.
Per un esempio di come calcolare gli endpoint, vedere Specificare un intervallo di dati delle modifiche.
Se necessario, usare un container Ciclo For per ritardare l'esecuzione fino a quando i dati della modifica per l'intervallo selezionato sono pronti.
Per un esempio di contenitore Ciclo For, vedere Determinare se i dati di modifica sono pronti.
Usare un'attività Script o un'attività Esegui SQL per assemblare l'istruzione SQL che verrà usata per interrogare le modifiche.
Per un esempio di come assemblare la query, vedere Preparare la query per i dati delle modifiche.
Usare più attività di flusso di dati per caricare i dati delle variazioni da ogni tabella di origine e applicarli alla destinazione. Configurare ogni attività di Flusso di Dati come descritto nei passaggi indicati di seguito.
In ogni flusso di dati usare un componente di origine per eseguire una query sulle tabelle delle modifiche per le modifiche che rientrano negli endpoint selezionati.
Per un esempio di come eseguire query sulle tabelle delle modifiche, vedere Recuperare e comprendere i dati delle modifiche.
Usare una Suddivisione condizionale per direzionare inserimenti, aggiornamenti ed eliminazioni a output diversi per l'elaborazione appropriata.
Per un esempio di come configurare questa trasformazione per indirizzare l'output, vedere Elaborare inserimenti, aggiornamenti ed eliminazioni.
Utilizzare un componente di destinazione per applicare gli inserimenti alla destinazione. Utilizzare le trasformazioni dei comandi OLE DB con istruzioni UPDATE e DELETE con parametri per applicare aggiornamenti ed eliminazioni alla destinazione.
Per un esempio di come usare questa trasformazione per applicare aggiornamenti ed eliminazioni, vedere Applicare le modifiche alla destinazione.