Poniżej znajduje się tylko kilka przykładów dotyczących „faktycznych dowodów na wiarygodność lub brak wiarygodności w pierwszej wersji każdej nowej wersji”, zgodnie z żądaniem. Nie jest to pełna analiza, ale sugestia dotycząca tego, co możesz chcieć zbadać.
Możesz przejść do góry „Lista problemów rozwiązanych przez SQL Server 2008 Service Pack 1” i „Lista problemów rozwiązanych przez SQL Server 2008 Service Pack 3” na stronie MSDN. Porównaj liczbę i wagę problemów na obu listach. IMO pierwsza lista jest dłuższa i zawiera więcej przedmiotów, które mogłyby zrujnować mój dzień, takich jak:
- Komunikat o błędzie podczas łączenia się z nazwaną instancją SQL Server na komputerze klienckim z systemem Windows Vista lub Windows Server 2008
- Agent czytnika dziennika pomija niektóre transakcje, gdy agent czytnika dziennika uruchamia się w celu replikacji transakcji
- Komunikat o błędzie podczas uruchamiania zapytania dotyczącego operacji łączenia zewnętrznego w SQL Server 2008
- Komunikat o błędzie podczas wykonywania operacji aktualizacji lub usuwania w tabeli, która nie ma indeksu klastrowego utworzonego w SQL Server 2008
- Zapytanie, które korzysta z parametrów, a opcja RECOMPILE zwraca niepoprawne wyniki po uruchomieniu zapytania w wielu połączeniach jednocześnie w SQL Server 2008
Przeanalizujmy jeszcze jeden poziom i rozważmy tylko jedno polecenie, ŁĄCZENIE. Został wydany jako część SQL 2008 z kilkoma problemami, opisanymi w następujących linkach:
W związku z tym w momencie oryginalnej wersji SQL 2008 postanowiłem nie używać MERGE. Obecnie używam MERGE, w wersji 2008 R2 i myślę, że to naprawdę świetna funkcja.
Edycja: oto lista wad w SQL 2012, które zostały niedawno naprawione . Mam nadzieję, że to pomoże.
Kolejna edycja: wybrałem MERGE do bardziej szczegółowej analizy, ponieważ jest to bardzo ważna poprawa. W rzeczywistości jest to duży krok w nadrobieniu zaległości w Oracle i poprawia naszą wydajność. W związku z tym MERGE był szeroko sprzedawany w momencie wydania SQL 2008. Jednak nie był całkowicie gotowy do użycia w poważnych systemach produkcyjnych, kiedy został pierwotnie wydany, i nie było łatwego sposobu, aby poznać go z prezentacji / artykułów / postów na blogu i tym podobnych.
Podobnie izolowanie migawek jest niesamowitą nową funkcją, która po prostu działa, ale wywoływanie skalarnych UDF w ograniczeniach CHECK nie działa we wszystkich przypadkach i jako takie nie powinno być stosowane w produkcji, gdy potrzebujemy integralności danych. Jednak obie nowe funkcje były zalecane w prezentacjach „Co nowego w SQL xxxx”, a także w książkach, artykułach itp. I z podobnym entuzjazmem.
Musimy bardzo uważać na nowe funkcje - nie wszystkie będą przydatne / niezawodne / wydajne.