Utilizzo di SSIS per mappare valori codificati come parte di una migrazione da una a molte tabelle in Visual Studio

StackOverflow https://stackoverflow.com/questions/822832

  •  03-07-2019
  •  | 
  •  

Domanda

Utilizzando SQL Server 2005 e Visual Studio 2005, sto cercando di creare un pacchetto SSIS per unire i dati da 1 tabella a diverse altre tabelle.

La tabella di origine non ha diversi campi come le tabelle di destinazione. Ad esempio i campi "CreatedBy" e "CreatedDate". Vorrei che questi fossero codificati (in un certo senso) come parte del processo di importazione dei pacchetti.

Il problema non è sapere cosa usare per facilitare questa mappatura. Come punto di partenza sarebbe accettabile avere un hard coded '1' e GetDate () rispettivamente per CreatedBy e CreatedDate.

Le proprietà "Input e Output" di " o " Mapping colonna " scheda in " Editor avanzato per destinazione " la finestra di dialogo delle opzioni non ha alcun supporto apparente per la mappatura di "default" valori come GetDate ().

Qualche suggerimento su come raggiungere questo obiettivo?

È stato utile?

Soluzione

Il modo SSIS per creare nuove colonne (con valori statici o meno) è utilizzare la colonna quotata " trasformazione nel flusso di dati, tra l'origine e la destinazione.

Ciò consente di specificare colonne aggiuntive e i relativi valori usando un'espressione. Per la data / ora corrente, utilizzare Getdate () come espressione e impostare il tipo di dati su " date (DT_DATE) " ;. Per codificare un valore in modo rigido, racchiudilo tra virgolette nell'espressione (ad es. "1") e specifica il tipo di dati rilevante.

Altri suggerimenti

Anziché utilizzare una tabella come origine, che ne dici di specificare la query in modo specifico? In questo modo, puoi definire staticamente i valori come parte della fonte.

per es.

SELECT id, fieldOne, fieldTwo, '1' AS createdBy, GetDate() AS createdDate
FROM SourceTable

Di recente ho fatto esattamente questa cosa.

Una cosa importante da ricordare è che è necessario assicurarsi che i tipi di dati corrispondano. Ho avuto alcuni problemi con tipi di dati stringa non corrispondenti (UTF-8 e simili).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top