Zadeklaruj SQL: Opis. Transact-SQL

Dzisiaj praktycznie każdy nowoczesny programista wie, czym jest Transact-SQL. To jest rozszerzenie używane w SQL Server. Ten rozwój jest ściśle zintegrowany z Microsoft SQL i dodaje konstruktorów programowania, które nie są pierwotnie dostarczane w bazach danych. T-SQL obsługuje zmienne, podobnie jak w większości innych programów. Jednak to rozszerzenie ogranicza użycie zmiennych w sposób, który nie jest powszechny w innych środowiskach.

Ogłaszanie zmiennych w DECLARE SQL

Użyj instrukcji DECLARE () do zadeklarowania zmiennej w T-SQL. Na przykład w przypadku deklarowania zmiennej i jako liczby całkowitej za pomocą tego operatora, polecenie będzie wyglądać następująco: DECLARE @i int.


Chociaż Microsoft nie dokumentyruet эtu funkcji T-SQL podderzhyvaet również określone słowo kluczowe jak między nazwy zmiennych i rodzaj danych Uh, jak w przykładzie następująco: DEKLARUJĄ @i int. Słowo kluczowe AS ułatwia czytanie instrukcji DECLARE. Jedynym rodzajem danych, pozwala nam nie kotoryya dekret Słowo klyuchevoe AS, - ten typ tablytsы danych, kotoryya javljaetsja novыm w SQL Server 2000 na zdolność Daet opredelyt peremennuyu, soderzhaschuyu polnuyu stołowego.

DECLARE SQL: Description

T-SQL obsługuje tylko zmienne lokalne, które są dostępne tylko w grupie, która je utworzyła. Pakiet jest operatorem (lub grupą operatorów) analizowanym przez bazę danych jako jednostka. Każde narzędzie lub interfejs klienta ma swój własny sposób wskazywania, gdzie kończy się pakiet. Na przykład w Query Analyzer, którego używaszpolecenie GO, aby wskazać, gdzie kończy się pakiet. Jeśli syntaksycheskaya tam są błędy w rachunku lyubom, pakiet przechodzi fazę razbora zatem klyentskyy nie otpravlyaet pakietu narzędzi dla SQL Server dalnejshem przetwarzanie. Można uruchomić kod kotoryya ogłasza peremennuyu tablytsы a zatem vstavlyaet termin w tabeli w tej samej partii.



Przykład SQL stwierdzenie tabeli: DEKLARUJĄ @mytable stół
kol1 Int nie puste
Wstawić NA @mytable wartości


GOTeper obъyavyte peremennuyu tablytsы w jedną stronę, a zatem włożyć Termin w tabeli w druhuyu partii: DECLARE @mytable stół
col1 int NOT NULL
INSERT INTO @mytable wartości

INSERT GOOperator awarie terpyt coś później peremennaya tablytsы vыhodyt dla zakresu predelы i poyavlyaetsya sleduyuschee komunikat o błędach : Serwer
: Msg 137, Level 15 STATUS 2 2. string

Peremennыe procedury (instrukcje DECLARE, SET)

zmienne wsparcie lokalnыh w procedurach SQL pozwala nam wyodrębnić i przypisać Opti Przetwarzanie danych w celu wsparcia logiki procedur. Zmienne w procedurach są określane przy użyciu instrukcji SQL DECLARE. Wartość mogut prysvayvatsya peremennыm z pomoshchju zestaw instrukcji lub w kachestve wartości domyślne, while ogłoszeniu zmiennej. Do list, wyrażeń, wyników zapytań i specjalnych wartości rejestru można przypisać zmienne.
oznacza mogut bыt naznachenы zmienne parametry protsedurы drugi peremennыm oraz mogut bыt ukazanы opcje jak operatorów SQL, vыpolnyaemыh w protsedurы.

Algorytm

W zmiennej ogłoszeniu Mona dekret ważności Domyślne,z wykorzystaniem DEFAULT oferty. Pokazыvaet zmienna zapowiedź ciąg typu Boolean Domyślna wartość CO FAŁSZ. Operator SET może być użyty do przypisania jednej wartości zmiennej. Peremennыe również mogut bыt ustanovlenы putem Instrukcja Wykonaj SELECT lub FETCH kombinacjach z wyrokiem INTO. Operator wartości w Can yspolzovatsya dla otsenki funkcji i rejestrów lub specjalnie prysvayvat znaczenie Kilka peremennыm.Vы można również przypisać wynik zmiennej GET DIAGNOSTICS operator. GET DIAGNOSTYKA Can yspolzovatsya uzyskiwania deskryptora Ilość zatronutыh ​​termin (obnovlyaetsya operator UPDATE, DELETE - Operator DELETE) lub status zwróci tylko coś vыpolnennoho SQL-operator

funkcje

ciąg DECLARE SQL demonstryruet, jako część logiki można yspolzovatsya definicje wartość, która ma zostać przypisana do zmiennej. W tym sluchae, warunki bыly Jeśli yzmenenы W ramach ponad operatora rannego DELETE i wykonać GET DIAGNOSTICS doprowadziły do ​​to znaczenie prysvoeno coś zmienna v_rcount, bolshee zera zmienna is_done prysvayvaetsya znaczenie PRAWDA.

Protsedurы

Protsedurы DEKLARUJĄ SQL - to protsedurы całkowicie realyzovannыe s przy użyciu SQL Zgłoszenia kotoryya mogą być wykorzystywane do połączenia kapsułkowania. To samo z kolei można nazwać podprocedłem programu.
W architekturze bazy danych znajduje się wiele użytecznych aplikacji procedur SQL. ONI yspolzuyutsya do tworzenia scenariuszy prostыh Szybkie zamówienie dla transformacji danych i aktualizować, bazovыh otchetov generacji Zwiększeniewydajność i modulacja aplikacji, a także poprawa ogólnego wyglądu i bezpieczeństwa bazy danych Istnieje wiele funkcji proceduralnych, które czynią je potężnym narzędziem przetwarzania. Przed podjęciem decyzji o wdrożeniu procedury SQL ważne jest zrozumienie, jakie analogi są w kontekście podprogramów, w jaki sposób są one implementowane i w jaki sposób można je wykorzystać.

Tworzenie procedur

Implementowanie procedur SQL może odgrywać ważną rolę w architekturze bazy danych, tworzeniu aplikacji i wydajności systemu. Rozwój wymaga jasnego zrozumienia wymagań, możliwości i wykorzystania funkcji, a także znajomości wszelkich ograniczeń. Procedury SQL są tworzone zgodnie z instrukcją CREATE PROCEDURE. Kiedy tworzony jest algorytm, zapytania w treści procedury są oddzielone od logiki proceduralnej. Aby zmaksymalizować wydajność, kwerendy SQL są statycznie kompilowane w sekcjach w pakiecie

Zmienne

Zmienna lokalna Transact-SQL jest obiektem, który może zawierać jedną wartość danych określonego typu. Zwykle zmienne są używane w partiach i skryptach:
  • Jako licznik musisz albo policzyć liczbę cykli, albo ustawić ile razy pętla jest wykonywana;
  • aby zapisać wartość danych do zweryfikowania przez operatora kontroli przepływu;
  • , aby zapisać wartość danych, które zostaną zwrócone przez kod funkcji powrotu.
  • Nazwy szeregu funkcji języka Transact-SQL zaczynają się od znaków (@@). Chociaż we wcześniejszych wersjach Microsoft SQL Server funkcje @@ są nazywane zmiennymi globalnymi.@@ - są to funkcje systemowe, a ich użycie jest zgodne z regułami składni dla funkcji.

    o zmiennej ogłoszenie

    Operator określa DEKLARUJĄ peremennuyu Transact-SQL Według algorytmu sleduyuschemu:
  • imieniu Określenia, kotoroe dolzhna ymet jeden @ w postaci kachestve pervogo;
  • przypisanie określonego lub zdefiniowanego przez użytkownika typu i długości danych;
  • dla zmiennych numerycznych przypisano również dokładność i skalę.
  • w przypadku zmiennych XML można przypisać dodatkową kompilację schematu.
  • Ustawienie wartości na NULL. Na przykład, operator DEKLARUJĄ SQL-request sozdaet lokalnuyu peremennuyu nazwami @mycounter o typie danych int.
  • Kilka Avto obъyavyt zmienne lokalnыh, yspolzuyte zapyatuyu po definicji zmiennych PIERWSZEGO okolicy i zatem sleduyuschee umieścić swoje lokalne nazwy sieci i typu danych. Na przykład, operator następujące sozdaet lokalnыe peremennыe trzy nazwy @LastName, @FirstName i @StateProvince i ynytsyalyzyruet Każdy NULL IZ. Zmiennej objętości - jest Diapazon operatorom Transact-SQL, kotoryya mogut ssыlatsya na peremennuyu. Objętość dlytsya zmienna z jednego punktu do końca kotoraja obъyavlyaetsya strony lub hranymoy protsedurы w zarządach kotoroj IIa.

    Powiązane publikacje