none
SSIS - Datei innerhalb eines Data Flows lesen und schreiben RRS feed

  • Frage

  • Der Data Flow startet mit dem Einlesen einer CVS-Datei. Deren Datensätze werden durch weitere Komponenten bearbeitet und sollen am Ende wieder in die selbe Datei zurück geschrieben (überschrieben) werden.

    Beim Ausführen des Data Flow Tasks wird gestoppt. Anscheinend wird die Datei gar nicht geöffnet. Keine einzige Komponente des Data Flows wird bearbeitet, jedenfalls bleiben sie alle weiß. Ausser die letzte Komponente, die die bearbeiteten Daten wieder in die Datei zurückschreiben soll, ist rot.

    Die Fehlermeldung sind:

    • Warning: The process cannot access the file because it is being used by another process.
    • Error: Cannot open the datafile "C:\bla.txt".
    • Error: component "overwrite file" (1366) failed the pre-execute phase and returned error code 0xC020200E

    Ich nehme an, die Datei wird nach dem Lesen nicht geschlossen. Deswegen kann die letzte Komponente nicht drauf schreiben.

    Gibt es eine Lösung für mein Problem?

    Montag, 16. September 2013 11:08

Antworten

  • Warning: The process cannot access the file because it is being used by another process.

    ...

    Ich nehme an, die Datei wird nach dem Lesen nicht geschlossen. Deswegen kann die letzte Komponente nicht drauf schreiben.

    Genau so ist es; zum Schreiben muss die Zieldatei exklusiv geöffnet werden, was aber nicht geht, weil sie noch im Lesenden Zugriff durch die Quelle ist.

    Als Ziel musst Du eine anderen temporäre Datei nehmen; nachdem der Task fertig ist, kannst Du die alte Datei löschen und die neue Datei auf den alten Dateinamen umbenennen.


    Olaf Helper

    [ Blog] [ Xing] [ MVP]

    Dienstag, 17. September 2013 08:54

Alle Antworten