Benutzer mit den meisten Antworten
SSIS 2008: àáâãå durch a ersetzen

Frage
-
Hallo alle zusammen,
im SSIS gibt es in der abgleiteten Spalte die Funktion "replace". Soweit ich das gesehen habe, kann man da immer nur einen Buchstaben durch einen anderen ersetzen. Muss ich also, um "àáâãå" durch "a" zu ersetzen, immer
replace([Spalte1], "à", "a")
replace([Spalte1], "á", "a")
replace([Spalte1], "â", "a")
...
schreiben?
Da ich das Ganze für i ,o, u auch durchmachen muss und für jede Spalte, suche ich nach Vereinfachungen.
Danke für Eure Hilfe.
Johannes
Antworten
-
Hallo Johannes,
ich würde nicht in der Derived Column machen, sondern einen Skripttask im Dataflow schreiben, der das erledigt. Dort bist Du wesentlich flexibler.
Du übergibst dem Task die Spalte, in der Du konvertieren willst und fügst eine neue Ausgabespalte hinzu. Der Rest der Daten wird durchgeschleift.
In der Spaltenzuordnung des Ziels verbindest Du dies eneue Spalte mit Deinem Zielfeld.
- Als Antwort markiert Johannes Cramer Montag, 19. Juli 2010 20:34
-
Hallo Johannes,
ergänzend zu Christas Antwort:
Wenn Du das für alles mit Akzent machen willst,
kannst Du dafür die String.Normalize Methode nutzen.
Damit entfallen umfangreiche Tabellen, die man sonst erstellen müsste.Unter How do I remove diacritics (accents) from a string in .NET?
findest Du ein C# Beispiel, das auf einem Beispiel von Michael Kaplan,
dem Zeichensatzexperten, basiert.Gruß Elmar
- Als Antwort markiert Johannes Cramer Montag, 19. Juli 2010 20:34
Alle Antworten
-
Hallo Johannes,
ich würde nicht in der Derived Column machen, sondern einen Skripttask im Dataflow schreiben, der das erledigt. Dort bist Du wesentlich flexibler.
Du übergibst dem Task die Spalte, in der Du konvertieren willst und fügst eine neue Ausgabespalte hinzu. Der Rest der Daten wird durchgeschleift.
In der Spaltenzuordnung des Ziels verbindest Du dies eneue Spalte mit Deinem Zielfeld.
- Als Antwort markiert Johannes Cramer Montag, 19. Juli 2010 20:34
-
Hallo Johannes,
ergänzend zu Christas Antwort:
Wenn Du das für alles mit Akzent machen willst,
kannst Du dafür die String.Normalize Methode nutzen.
Damit entfallen umfangreiche Tabellen, die man sonst erstellen müsste.Unter How do I remove diacritics (accents) from a string in .NET?
findest Du ein C# Beispiel, das auf einem Beispiel von Michael Kaplan,
dem Zeichensatzexperten, basiert.Gruß Elmar
- Als Antwort markiert Johannes Cramer Montag, 19. Juli 2010 20:34