Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

Query Editor

Termin Definicja
Query Editor

Query Editor to okno edytora zapytań w Management Studio, w którym pisze się i uruchamia polecenia T-SQL.

Query Editor w SQL Server Management Studio

Query Editor to okno programu SQL Server Management Studio przeznaczone do tworzenia i wykonywania skryptów języka Transact-SQL, czyli T-SQL używanego przez aparat Microsoft SQL Server. Po otwarciu edytora użytkownik wybiera połączenie z instancją Database Engine, a następnie może wskazać bazę danych, w której mają być wykonywane polecenia. Wybór bazy wpływa między innymi na działanie zapytań odwołujących się do obiektów bez podanej nazwy bazy. Nazwę można także określić jawnie, na przykład przez użycie instrukcji USE NazwaBazy;.

Edytor umożliwia wpisywanie pojedynczych instrukcji, całych skryptów oraz poleceń administracyjnych dotyczących SQL Server. W jego obrębie można wykonywać zapytania SELECT, modyfikować dane za pomocą INSERT, UPDATE i DELETE, tworzyć obiekty przez CREATE oraz analizować informacje systemowe udostępniane między innymi w widokach katalogowych i dynamicznych widokach zarządzania. Query Editor nie jest osobnym silnikiem bazy danych. Przekazuje tekst poleceń do połączonej instancji SQL Server, która interpretuje T-SQL, sprawdza uprawnienia i wykonuje operacje.

Wykonywanie partii T-SQL i odbiór wyników

Uruchomienie zaznaczonego fragmentu lub całego skryptu w Query Editor następuje po wybraniu polecenia Execute albo użyciu klawisza F5. Jeżeli tekst nie jest zaznaczony, SQL Server Management Studio zwykle wysyła do wykonania całą zawartość bieżącego okna. Zaznaczenie konkretnej instrukcji pozwala ograniczyć działanie do wybranego fragmentu, co ma znaczenie przy testowaniu zmian i diagnostyce. Wyniki zapytania są prezentowane w zakładce Results jako tabela albo tekst, zależnie od ustawień edytora. Osobna zakładka Messages pokazuje komunikaty silnika, ostrzeżenia, liczbę zmienionych wierszy oraz błędy.

Skrypt może być podzielony na partie za pomocą słowa GO. Jest to separator rozpoznawany przez narzędzia klienckie, w tym SQL Server Management Studio, a nie instrukcja języka T-SQL wykonywana przez silnik. Kolejne partie są wysyłane oddzielnie. Ma to znaczenie na przykład wtedy, gdy utworzony obiekt musi istnieć przed użyciem go w następnej partii. Query Editor pozwala także świadomie kontrolować transakcje przy użyciu BEGIN TRANSACTION, COMMIT i ROLLBACK. Samo uruchomienie skryptu nie gwarantuje automatycznego wycofania zmian po błędzie, dlatego sposób obsługi transakcji powinien wynikać z treści skryptu i ustawień połączenia.

Podpowiedzi, błędy składni i plan wykonania

Query Editor zawiera funkcje edycji ułatwiające pracę z obiektami SQL Server. IntelliSense może podpowiadać nazwy baz, schematów, tabel, kolumn i funkcji oraz sygnalizować część błędów składni jeszcze przed wykonaniem zapytania. Podpowiedzi zależą od aktualnego połączenia, uprawnień oraz poprawnie pobranych metadanych. Zmiana struktury tabeli lub przełączenie bazy może wymagać odświeżenia lokalnych informacji IntelliSense, dlatego brak podpowiedzi nie oznacza automatycznie braku obiektu w serwerze.

Po wykonaniu niepoprawnego polecenia SQL Server zwraca komunikat zawierający numer błędu, opis oraz często numer wiersza. Numer wiersza odnosi się do tekstu przesłanego w danej partii, więc przy długich skryptach należy uwzględnić separatory GO. Query Editor może również uruchamiać analizę planu wykonania. Plan szacowany opisuje przewidywany sposób realizacji zapytania bez wykonywania go, natomiast plan rzeczywisty jest generowany po faktycznym uruchomieniu instrukcji. Informacje o skanach tabel, użyciu indeksów, sortowaniu, złączeniach i szacowanej liczbie wierszy pomagają ocenić, czy problem wynika z zapytania, statystyk lub struktury indeksów. Sam wygląd planu nie zastępuje jednak sprawdzenia czasu wykonania, blokad, obciążenia instancji i aktualnych danych.

Bezpieczna praca z Query Editor podczas diagnostyki

Przed wykonaniem skryptu w Query Editor trzeba sprawdzić nazwę serwera, typ połączenia, wybraną bazę danych oraz konto używane do uwierzytelnienia. Szczególnej ostrożności wymagają polecenia modyfikujące dane, zmieniające schemat lub wpływające na konfigurację instancji. Zapytanie UPDATE albo DELETE bez właściwego warunku WHERE może zmienić wiele wierszy, a polecenia DDL mogą przerwać zależności między obiektami. Podczas testów warto najpierw użyć SELECT z tym samym warunkiem, ograniczyć zakres danych i sprawdzić komunikaty w zakładce Messages. Przy operacjach wymagających kontroli skutków można rozpocząć transakcję, zweryfikować wynik, a następnie wykonać COMMIT lub ROLLBACK.

Problemy z Query Editor mogą wynikać zarówno z błędów w T-SQL, jak i z braku połączenia, niewłaściwego kontekstu bazy, blokady, przekroczenia limitu czasu lub niewystarczających uprawnień. W diagnostyce należy rozdzielić błąd zgłoszony przez edytor od błędu zwróconego przez SQL Server. Przy pracy na komputerze z Windows można sprawdzić wersję SQL Server Management Studio, stan sieciowego połączenia z instancją oraz ustawienia trybu zwracania wyników. W przypadku problemów z laptopem lub komputerem PC warto również zweryfikować działanie klienta SQL, sterowników sieciowych i lokalnego systemu, ponieważ awaria środowiska użytkownika może uniemożliwić otwarcie sesji Query Editor, mimo że sama baza danych działa prawidłowo.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę