| Termin | Definicja |
|---|---|
| Kompatybilność funkcji | Kompatybilność funkcji określa, które elementy programistyczne są dostępne w danej wersji i edycji SQL Server. Zakres pojęcia kompatybilności funkcjiKompatybilność funkcji w SQL Server oznacza zgodność konkretnego elementu języka T-SQL, mechanizmu silnika albo obiektu programistycznego z używaną wersją SQL Server, edycją produktu i ustawieniami bazy danych. Funkcją może być zarówno funkcja systemowa, na przykład Podczas oceny zgodności trzeba rozróżnić trzy kwestie: obecność funkcji w danej wersji silnika, wymagany poziom kompatybilności bazy danych oraz ograniczenia wynikające z edycji lub środowiska uruchomieniowego. Wersja silnika określa, jakie możliwości zostały zaimplementowane. Poziom kompatybilności bazy danych, ustawiany właściwością Wersja silnika a poziom kompatybilności bazyInformacje o wersji można sprawdzić zapytaniem Niższy poziom kompatybilności bywa używany jako etap przejściowy podczas migracji, ponieważ pozwala ograniczyć zmianę zachowania zapytań po aktualizacji silnika. Nie gwarantuje jednak pełnej zgodności aplikacji. Zapytanie może nadal odwoływać się do funkcji niedostępnej w starej wersji albo korzystać ze składni, której parser nie rozpoznaje. Z drugiej strony podniesienie poziomu kompatybilności może zmienić plan wykonania i ujawnić problemy z niejednoznaczną konwersją typów, kolejnością ewaluacji lub poleganiem na dawnym zachowaniu optymalizatora. Zmianę warto poprzedzić testami zapytań, procedur, widoków, funkcji i wyzwalaczy używanych przez aplikację. Rozpoznawanie niezgodności w kodzie T-SQLTypowym objawem braku kompatybilności jest błąd składni zgłaszany podczas tworzenia albo wykonywania obiektu. W takim przypadku trzeba ustalić, czy problem dotyczy parsera, dostępności funkcji, typu danych, uprawnień czy ustawienia bazy. Przykładowo użycie Przydatne jest wyszukiwanie zależności w definicjach obiektów oraz przegląd ostrzeżeń dotyczących funkcji przestarzałych. Definicję procedury, widoku lub funkcji można odczytać z katalogu systemowego, między innymi przez Kompatybilność funkcji podczas migracji SQL ServerPrzed migracją należy sporządzić listę funkcji i konstrukcji T-SQL używanych przez aplikację oraz przypisać je do minimalnej wersji SQL Server wymaganej przez kod. Oprócz zapytań wykonywanych bezpośrednio trzeba uwzględnić procedury składowane, widoki, funkcje użytkownika, wyzwalacze, skrypty wdrożeniowe i zapytania generowane przez biblioteki aplikacyjne. Szczególną uwagę wymagają elementy oznaczone w dokumentacji jako przestarzałe, ponieważ mogą działać w obecnej wersji, lecz zostać usunięte albo zmienić zachowanie w przyszłej wersji. Diagnoza problemu powinna obejmować odtworzenie zapytania na docelowej wersji SQL Server, sprawdzenie poziomu kompatybilności bazy oraz porównanie rezultatów, a nie tylko sprawdzenie, czy zapytanie się kompiluje. Test należy wykonać dla typowych danych, wartości pustych i |