web-dev-qa-db-fra.com

Comment convertir des blancs en null en ssis

J'extrais des données à partir d'Excel dans ssis. Une des colonnes Excel contient des valeurs blank. je dois donc remplacer la valeur blank par null, sinon mon paquet va échouer Des suggestions?

23
Sandeep Pulikonda

Vous pouvez également vouloir cocher l'option de conserver les valeurs nulles sur les connexions source et de destination (si disponible).

18
Thony

Avez-vous essayé quelque chose comme: 

LEN(TRIM([ColumnName]))==0 ? NULL(DT_WSTR, 10) : [ColumnName] 
7
NG.

Correction du problème ci-dessus :::::

La source et la destination doivent être cochées avec l'option autoriser les valeurs NULL et cela fonctionnera.

2
sathish

J'ai eu un cas similaire où je voulais remplacer une chaîne dans une colonne de date par NULL et j'ai utilisé le code suivant:

LEN (your_data) <2? NULL (DT_WSTR, 50): vos_données

Dans ce cas, la chaîne n'avait qu'une longueur de 1. J'ai ensuite utilisé la transformation de conversion de données pour la convertir en type dt_dbtimestamp.

J'espère que cela pourra aider!

1
Chris

Vous devez utiliser le composant Colonne dérivée et une expression conditionnelle. Comme il s'agit d'une instruction conditionnelle, les types de données devront être identiques pour créer un résultat booléen. 

Essayez d'utiliser ceci:

ColumnName == (DT_DATE)"" ? NULL(DT_DATE) : ColumnName
0
FreeTheLemmings