Auf Thema antworten

Ich habe noch nicht mit BULK Import gearbeitet aber solange du nicht grade mehrere Trennzeichen angeben kannst( eventuell FIELDTERMINATOR IN (';',',') würde ich das ganze lieber in einem 2ten Schritt machen, um Probleme beim Import zu vermeiden. Im zweiten Schritt dann nicht als View, sondern schon in extra spalten mit einem Script nach dem Import.

 

Der Grund ist einfach: Beim zerlegen von Zeichenketten mit left(), right() etc. hast du schnell einen Fehler wenn die Zeichenkette mal "unerwartet" kurz ist oder irgendein Zeichen an das man sich hält zu oft vorkommt. Sobald ein Fehler auftritt bricht entweder dein Import oder deine View ab und gibt nichts mehr aus. In einer Schleife kann man in mehreren Schritten und mit viel Absicherungen durch IF Abfragen das ganze etwas zuverlässiger gestalten. Z.B.:

[CODE]DECLARE    @spalte VARCHAR(2000),

        @id INT

 

WHILE    @id IS NOT NULL

BEGIN

    SET        @id = (    SELECT    TOP 1

                            id

                    FROM    ActiveDirectory

                    WHERE    OU1 IS NULL )

    SET        @spalte = (    SELECT    spalte

                        FROM    ActiveDirectory

                        WHERE    id = @id )

 

    IF    @spalte LIKE '%OU=%,%'

    BEGIN

            -- Zerlegung @spalte

    END

END[/CODE]

 

Beim Zerlegen musst du dann mit PATINDEX und CHARINDEX, LEFT und RIGHT sowie REVERSE arbeiten bis du die Zeichenkette hast die du brauchst.


Zurück
Oben