Wyciągnięcie wartości parametrów zapisanych w planach zapytań

Bardzo często gdy przeprowadzamy proces optymalizacji zapytań przeglądamy wygenerowane plany zapytań. Na tej podstawie można dokonać pewnych optymalizacji, ale czy zawsze ? Często mamy doczynienia z procedurami składowanymi czy też sparametryzowanymi zapytaniami ad-hoc. Przeglądając zapytania dochodzimy do wniosku, że tak do końca nie jesteśmy wstanie stwierdzić jak powinien być wygenerowany plan zapytań, rodzi się pytanie czy taki plan jest dobry. Skąd te wątpliwości ? Często w predykatach czy w wywoływanych procedurach mamy użyte zmienne (parametry). Jeśli w klauzuli WHERE używamy np. predykatu Dowiedz się więcej…

Tworzymy login z podanym SID-em – dodatek

W poprzednim artykule „Blog” opisałem cały proces sprawdzania tzw. SID-u i podałem skrypty umożliwiające założenie loginy z wybranym SID-em. Ale czasem w trakcie przenoszenia/migracji na inne instancje trzeba utworzyć login wraz z hasłem, którego nie znamy. Określenie hasła jako wartości zaszyfrowanej jest przydatne do tworzenia skryptów logowania z jednego serwera do wdrożenia na innym serwerze, gdy trzeba upewnić się, że hasła dla każdego logowania są dokładnie takie same na nowym serwerze. Hasło jest określone jako wartość binarna – ta wartość jest „haszowaną” Dowiedz się więcej…

SQL Server 2022 – Funkcja DATE_BUCKET()

Jest to nowa funkcja w SQL Server 2022. Funkcja DATE_BUCKET zwraca wartość typu data/godzina odpowiadającą początkowi każdego segmentu typu data/godzina na podstawie sygnatury czasowej zdefiniowanej przez parametr origin lub jeśli nie podano pochodzenia, jako data pochodzenia zostanie użyta domyślna wartość 1900-01-01 00:00:00.000 Składnia: Datapart Część daty musi być jedną z poniższych typów z listy. Ten parametr kontroluje rozmiar 1 segmentu. Chcesz otrzymać zestawienie faktur za tydzień, miesiąc czy minutę? datepart będzie kontrolować domyślny rozmiar segmentu. Część daty skrót day dd,d week wk,ww Dowiedz się więcej…