2016-03-23 3 views
0

Ich habe eine Lookup-Transformation, die Feld ContainerSrcID_Barcode DT_WSTR (20) aus Tabelle A gegen ContainerSrcID DT_WSTR (40) aus Tabelle B sucht und Werte werden in eine Fehlertabelle geworfen, wenn sie nicht übereinstimmen. Ich habe bemerkt, dass Werte, die in beiden Schlüsselfeldern vorhanden sind, in die Fehlertabelle geworfen werden. Der einzige Unterschied, den ich in diesen beiden Schlüsseln sehe, ist die Länge. Gibt es einen weiteren Grund, warum Werte, die in diesen beiden Schlüsseln enthalten sind, als nicht übereinstimmend angesehen werden?SSIS-Lookup-Transformationssuchschlüssel funktioniert nicht richtig

+0

Zum Beispiel ist der Wert 7055200201 in ContainerSrcID_Barcode in der Tabelle. A existiert im Feld ContainerSrcID in Tabelle B, aber der Wert wird in eine Fehlertabelle geworfen, weil die Transformation für die Suche nicht übereinstimmt. –

Antwort

0

Die Länge der Felder spielt keine Rolle. Wenn die Suche keine Übereinstimmungen findet, stimmen die Daten nicht überein. Wahrscheinlich haben Sie Leerzeichen oder spezielle nicht-ASCII-Zeichen (wie Wagenrücklauf usw.) in einem der Felder und nicht die anderen.

+0

Gibt es eine Möglichkeit, dass ich feststellen kann, ob das Feld nachlaufende Leerzeichen hat, die das Match oder spezielle nicht-ASCII-Zeichen werfen? –

+0

Ich würde vorschlagen, eine TRIM() der beiden Spalten, die Sie in der Suche vergleichen. –