Poniżej przykład aktualizowania dużej liczby rekordów z wykorzystaniem pętli WHILE w TSQL Dlaczego tak? Dlatego, że chcemy podzielić rekordy na paczki i aktualizować paczka po paczce. W przypadku błędu wycofana zostanie jedna paczka a nie całość. Przykład na podstawie bazy AdventureWorks2008R2 SELECT COUNT(*) FROM Production.Product WHERE FinishedGoodsFlag = 1 Wynik zapytania 295 rekordów DECLARE @isFinished …
Category Archive: Programowanie
Dec 24
Import pliku CSV do SQL Server
Podczas analizy olbrzymiej ilości danych zdarza się, że edytory tekstu i regexp nie dają, wtedy, jedną z metod jest bulk insert danych z pliku do tabeli. Metoda bardzo wydajna, pozwalająca po imporcie swobodnie korzystać z dobrodziejstw SQL Server. BULK INSERT TempTable FROM ‘C:\Data\data.csv’ WITH( FIRSTROW =2, LASTROW =10, FIELDTERMINATOR =’,’,–CSV field delimiter ROWTERMINATOR =’\n’,–Use to …
Oct 21
Mapowanie typów danych SSIS i SQL Server
Kto nigdy nie napotkał tego problemu, to znaczy, że nie pracował z SSIS`ami SSIS Data Type SSIS Expression SQL Server single-byte signed integer (DT_I1) two-byte signed integer (DT_I2) smallint four-byte signed integer (DT_I4) int eight-byte signed integer (DT_I8) bigint single-byte unsigned integer (DT_UI1) tinyint two-byte unsigned integer (DT_UI2) four-byte unsigned integer (DT_UI4) eight-byte unsigned …
Aug 21
Transakcje i poziomy izolacji
Transakcja Transakcja jest zbiorem operacji na bazie danych, które wykonują się zgodnie z zasadą “wszystko albo nic”. Transakcyjność gwarantuje spójność danych w przypadku wystąpienia błędu w trakcie wykonania zapytania na bazie danych. Jest ona jedną z zasad ACID Zasada ACID Atomicity – atomowość, Consistency – spójność, Isolation – izolacja, Durability – trwałość. atomowość transakcji oznacza, …
Jul 08
Debuggowanie SSIS Script Component
Debugging is not possible untill 2012, but there are some ‘workarounds’ http://microsoft-ssis.blogspot.com/2011/04/breakpoint-does-not-work-within-ssis.html Dobrym rozwiązaniem jest debuggowanie z wykorzystaniem Trace loga // C# Code public override void Input0_ProcessInputRow(Input0Buffer Row) { System.Diagnostics.Trace.WriteLine(“SomeMessage: ” + Row.YourColumn); } Programik do podglądania logów DebugView v4.81 http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx