Wybieranie odpowiednich typów danych

Ukończone

Program SQL Server oferuje szeroką gamę typów danych do wyboru, a wybór może mieć wpływ na wydajność na wiele sposobów. Chociaż program SQL Server może automatycznie konwertować niektóre typy danych (nazywamy to konwersją niejawną), konwersja może być kosztowna i może również negatywnie wpływać na plany zapytań. Alternatywą jest jawna konwersja, w której używasz funkcji CAST lub CONVERT w kodzie, aby wymusić konwersję typu danych.

Ponadto wybranie typów danych, które są znacznie większe niż potrzebne, może spowodować marnowanie miejsca i wymagać więcej stron niż jest to konieczne do odczytania. Ważne jest, aby wybrać odpowiednie typy danych dla danego zestawu danych— co spowoduje zmniejszenie całkowitego miejsca wymaganego do magazynowania bazy danych i zwiększenie wydajności wykonanych zapytań.

Uwaga

W niektórych przypadkach konwersje nie są w ogóle możliwe. Na przykład nie można przekonwertować daty na nieco. Konwersje mogą negatywnie wpływać na wydajność zapytań, powodując skanowanie indeksów, w których wyszukiwanie byłoby możliwe, oraz dodatkowe obciążenie procesora CPU na samą konwersję.

Poniższy obraz wskazuje, w których przypadkach program SQL Server może wykonać niejawną konwersję i w których przypadkach należy jawnie przekonwertować typy danych w kodzie.

Chart of Type Conversions in SQL Server and Azure SQL

Program SQL Server oferuje zestaw typów danych dostarczonych przez system dla wszystkich danych, które mogą być używane w tabelach i zapytaniach. Program SQL Server umożliwia tworzenie typów danych zdefiniowanych przez użytkownika w języku T-SQL lub programie .NET Framework.