Standardwerte von Ausgabespalten bei Transformationen in synchronen und asynchronen Skriptkomponenten in SSIS

Kürzlich bin ich bei einem Kundenprojekt auf ein unerwartetes Verhalten bei der synchronen Transformationen in der Skriptkomponente gestoßen. Beim Erzeugen einer neuen Spalte in der Skriptkomponente wurde die Ausgabespalte von Typ integer mit 0-Werten befüllt. Dabei hätte ich erwartet, dass die Spalte NULL-Werte enthält. Interessanterweise verhält sich SSIS bei einer asynchronen Datentransformation anders. Um dies zu vermeiden, sollte man stets die entsprechenden Ausgabespalten am Anfang explizit auf NULL setzen.
Betrachten wir beide Fälle anhand zweier Beispiele.

„Standardwerte von Ausgabespalten bei Transformationen in synchronen und asynchronen Skriptkomponenten in SSIS“ weiterlesen

Case-Sensitive T-SQL und SSIS best practices

Klar, T-SQL ist Case-Insensitive. Mein SQL Statement ist syntaktisch korrekt, egal ob ich nun sELECT sElEcT, SELECT oder select schreibe. Jede dieser Varianten wird immer funktionieren. Auch bei Datenbank-, Schema-, Tabellen- und Spaltennamen ist der SQL Server tolerant, was die Benutzung der Shift-Taste betrifft (anders als das beispielsweise bei manchen MySQL-Installationen der Fall ist). Es ist dem SQL Server egal, ob ich die Tabelle [dbo].[Table1] oder die Tabelle [DBO].[TaBLE1] abfrage. Sofern eine Tabelle mit dem Namen „Table1“ im Schema „dbo“ existiert, wird die Abfrage ein Resultat liefern.

„Case-Sensitive T-SQL und SSIS best practices“ weiterlesen