Fehlerbehandlung mit SqlBulkCopy - könnte es schwieriger sein?

dataadapter dataset exception sqlbulkcopy

Frage

Hier laufen die Ideen sehr niedrig. Ich habe einen Fall, in dem ich SqlBulkCopy verwende, um Daten in eine DB zu pumpen, und etwa in der Mitte laufe ich auf verschiedene Ausnahmen (Primärschlüsselverletzungen, Indexverletzungen usw.).

Ich habe bestätigt, dass die Verstöße tatsächlich wahr sind und in den Daten korrigiert werden müssen. Wenn ich jedoch mit einem DataAdapter in die Datenbank schreibe (was sehr viel langsamer wäre), würde HasErrors in den fehlerhaften Zeilen im DataSet aktiviert sein, so dass ich sie leicht finden und mich um die Dinge kümmern könnte. Mit SqlBulkCopy? Zilch. Nada. Viel Glück bei der Suche nach dem, der Ihr Problem verursacht hat, denn alles, was Sie bekommen werden, ist ein Fehlername (wie "Primärschlüsselverletzung in yada yada yada, blah bla bla") und das war's.

Irgendwelche Vorschläge? Ich kann nicht glauben, dass es keine Möglichkeit gibt, diese Fehler zu bekommen. Mit dem Standard-BCP können Sie diese Dinge sogar in eine Protokolldatei pumpen. Können wir sowas nicht mit SqlBulkCopy machen?

Danke,

Beliebte Antwort

Wenn ich Datenimporte mache, die eine Validierung erfordern, werde ich die Daten in der Regel in eine Tabelle schreiben, die die Daten unverändert übernimmt und dann einen gespeicherten proc oder einen anderen sql ausführt, der meine Daten satzbasiert validiert und die Transformationen durchführt und lege es auf eine Weise in das endgültige Ziel, die ich kontrollieren kann.



Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum