Question

J'ai un peu d'une lutte avec des expressions à l'intérieur SSIS dérivées Colonnes.

Mon champ source est un type de données booléens. Il est champ de destination est un type de données SQL CHAR.

** Notez que je ne l'ai pas non plus concevoir des schémas. Si je devais ma façon, les types de données se correspondre. Malheureusement, ce n'est pas mon cas!

J'ai trouvé un excellent exemple d'une expression régulière .NET conversion CHAR-à-BOOL. Cela fait exactement le contraire de ce que je suis en train d'accomplir:

[valToTranslate] == "Y" ? (DT_BOOL)1 : [valToTranslate] == "N" ? (DT_BOOL)0 : NULL(DT_BOOL)

J'ai essayé de mettre en œuvre la formule inverse de cette expression sans succès. Voici ma tentative à défaut:

[valToTranslate] == 0 ? (DT_WSTR,1)"N" : [valToTranslate] == 1 ? (DT_WSTR,1)"Y" : "N"(DT_WSTR)

Je ne sais pas si le CAST à (DT_WSTR, 1) est même correct pour les champs CHAR SQL datatype? Dois-je utiliser (DT_STR, 1) à la place? Toute aide est grandement appréciée.

Était-ce utile?

La solution

Avez-vous essayé juste un simple

[valToTranslate] ? "Y" : "N"

Cela devrait fonctionner - vous devrez peut-être lancer le Y et N à DT_STR, si elle suppose qu'ils sont WSTR par défaut

.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top