Auswählen einer SQL-Aufgabe für einen Prozess
Geschrieben vonOssi Galkin Vor über einer Woche aktualisiertTable of contents
Welche SQL-Aufgabe soll verwendet werden?
Frends bietet vier Tasks zur Integration mit dem SQL-Server. Sie können die Dokumentation der Tasks einsehen, indem Sie auf deren Namen klicken:
Abfrage ausführen
Ausführen der Prozedur
Batchoperation
Masseneinfügung
Abfrage ausführen
Sie sollten die Methode ExecuteQuery verwenden, wenn Sie eine SQL-Abfrage oder ein Skript ausführen müssen, das Daten aus einer SQL-Datenbank zurückgibt, z. B. eine SELECT-Anweisung. ExecuteQuery ist die vielseitigste Option, erfordert bei Gebotsabfragen jedoch möglicherweise den größten Arbeitsaufwand. Grundsätzlich wird damit jede SQL-Abfrage ausgeführt.
Ausführen der Prozedur
Im Wesentlichen bietet die ExecuteProcedure-Aufgabe eine einfache Möglichkeit, eine gespeicherte Prozedur in einer Datenbank auszuführen. Gespeicherte Prozeduren sind vorkompilierte und optimierte SQL-Skripte, die in der Datenbank gespeichert sind und mehrfach ausgeführt werden können. Gespeicherte Prozeduren können auch mit ExecuteQuery ausgeführt werden.
Batchoperation
BatchOperation ist wahrscheinlich die am häufigsten verwendete Aufgabe für SQL-Integrationen. Sie sollten die BatchOperation-Methode verwenden, wenn Sie mehrere Vorgänge, z. B. Einfüge-, Aktualisierungs- oder Löschvorgänge, als einzelne, atomare Arbeitseinheit ausführen möchten. Dies kann nützlich sein, um die Leistung zu verbessern und die Anzahl der Roundtrips zur Datenbank zu verringern sowie die Datenkonsistenz angesichts potenzieller Ausfälle oder Fehler aufrechtzuerhalten. Sie können auch dazu beitragen, die Atomizität und Konsistenz der Daten sicherzustellen, da der gesamte Batch als einzelne Einheit entweder erfolgreich ist oder fehlschlägt, anstatt dass einzelne Anforderungen möglicherweise unabhängig voneinander erfolgreich sind oder fehlschlagen.
Um die Verwendung von BatchOperation zu vereinfachen, können Sie die Insert-Anweisung kopieren vonSSMSund verwenden Sie es als Vorlage für jede Abfrage.
Masseneinfügung
BulkInsert sollte verwendet werden, wenn Sie eine große Anzahl von Datensätzen auf einmal in eine Datenbanktabelle einfügen müssen. Der normale Einfügevorgang kann bei großen Datenmengen langsam und ineffizient werden. Durch die Verwendung von Bulk Insert können Sie die Leistung und Effizienz Ihres Dateneinfügeprozesses erheblich verbessern. Unter der Haube verwendet BulkInsert dieMassenkopierprogramm (BCP).
Bei Verwendung von BulkInsert muss vor den Bulk-Insert-Vorgängen eine Datenüberprüfung durchgeführt werden, da Bulk-Insert-Vorgänge häufig normale Datenüberprüfungsregeln umgehen. Insbesondere müssen alle Datentypen richtig sein, da die Abfrage sonst einfach fehlschlägt. Aus diesem Grund sollten Sie sorgfältig überlegen, ob die Verwendung von BulkInsert erforderlich ist oder ob BatchInsert einfacher und robuster wäre. Es sollte auch beachtet werden, dass BulkInsert die Datentypen basierend auf der ersten Zeile errät und Nullwerte als Zeichenfolgen angenommen werden.
Der nächste Artikel istEinführung in allgemeine SQL-Tipps
Verwandte ArtikelAufgabenEinführung in AufgabenBeispiel für AufgabenEinführung in die Structured Query Language (SQL)Einführung in allgemeine SQL-Tipps