Samouczek dotyczący programu SQL Server - wszystko, czego potrzebujesz do opanowania języka Transact-SQL



Ten artykuł dotyczący samouczka SQL Server jest obszernym przewodnikiem po różnych koncepcjach, składni i poleceniach używanych w MS SQL Server.

Na dzisiejszym rynku, na którym codziennie generowana jest ogromna ilość danych, bardzo ważne jest zrozumienie, jak postępować z danymi. SQL Server to zintegrowane środowisko opracowane przez firmę Microsoft do obsługi danych.W tym artykule na temat samouczka SQL Server nauczysz się wszystkich operacji i poleceń potrzebnych do eksploracji baz danych.

Dla lepszego zrozumienia blog podzieliłem na następujące kategorie:





Polecenia Opis

Polecenia języka definicji danych (DDL)

Ten zestaw poleceń służy do definiowania bazy danych.

Polecenia języka manipulacji danymi (DML)



Polecenia manipulacji służą do manipulowania danymi znajdującymi się w bazie danych.

Polecenia języka sterowania danymi (DCL)

Ten zestaw poleceń dotyczy uprawnień, praw i innych kontroli systemów baz danych.

Polecenia języka sterowania transakcjami (TCL)

Te polecenia są używane do zajmować się transakcją bazy danych.

Oprócz poleceń w tym artykule omówiono następujące tematy:



MS SQL Server - Samouczek dotyczący SQL Server - Edureka

  1. Co to jest SQL Server?
  2. Zainstaluj SQL Server
  3. Połącz się z programem SQL Server za pomocą programu SSMS
  4. Access Database Engine
  5. Architektura SQL Server
  6. Komentarze w języku SQL
  7. Typy danych programu SQL Server
  8. Klucze w bazie danych
  9. Ograniczenia w bazie danych
  10. Operatorzy
  11. Funkcje agregujące
  12. Funkcje zdefiniowane przez użytkownika
  13. Zagnieżdżone zapytania
  14. Łączy
  15. Pętle
  16. Procedury składowane
  17. Obsługa wyjątków

***UWAGA*** W tym samouczku dotyczącym SQL Server zamierzam rozważyć poniższą bazę danych jakoprzykład, aby pokazać, jak się uczyć i pisaćpolecenia.

Legitymacja studencka StudentName Imię rodzica Numer telefonu Adres Miasto Kraj
jedenNienawidzęAkriti mehra9955339966Blok drogowy Brygady 9HyderabadIndie
2ManasaShourya Sharma9234568762Mayo Road 15KalkutaIndie
3AnaySoumya Mishra9876914261Marathalli House No 101BengaluruIndie
4PreetiRohan Sinha9765432234Queens Road 40DelhiIndie
5ShanayaAbhinay agarwal9878969068Ulica Oberoi 21BombajIndie

Zanim zaczniemy rozumieć różne polecenia używane w SQL Server, zrozummy, czym jest SQL Server, jego architektura i jak go zainstalować.

Co to jest SQL Server?

Microsoft SQL Server jest relacyjny system zarządzania bazą danych . Obsługuje Strukturalny język zapytań i zawiera własną implementację języka SQL, którym jest Transact-SQL (T-SQL) . Posiada zintegrowane środowisko do obsługi baz danych SQL, jakim jest .

Kluczowe składniki programu SQL Server są następujące:

  • Silnik bazy danych: Ten komponent obsługuje przechowywanie, szybkie przetwarzanie transakcji i zabezpieczanie danych.
  • SQL Server - Ta usługa służy do uruchamiania, zatrzymywania, wstrzymywania i kontynuowania wystąpienia MS SQL Server.
  • Agent programu SQL Server - Usługa Agent serwera pełni rolę harmonogramu zadań i jest wyzwalana przez dowolne zdarzenie lub zgodnie z wymaganiami.
  • Przeglądarka SQL Server - Ta usługa służy do łączenia przychodzącego żądania z żądaną instancją programu SQL Server.
  • Wyszukiwanie pełnotekstowe programu SQL Server - Służy do umożliwienia użytkownikowi wykonywania zapytań pełnotekstowych na danych znakowych w tabelach SQL.
  • Moduł zapisujący VSS programu SQL Server - Umożliwia tworzenie kopii zapasowych i przywracanie plików danych, gdy SQL Server nie działa.
  • Usługi SQL Server Analysis Services (SSAS) - Ta usługa służy do analizy danych, eksploracji danych i możliwości. SQL Server jest również zintegrowany z i R do zaawansowanej analizy danych.
  • Usługi SQL Server Reporting Services (SSRS) - Jak sama nazwa wskazuje, ta usługa jest używana w celu zapewnienia funkcji i możliwości podejmowania decyzji, w tym integracji z .
  • Usługi integracji programu SQL Server (SSIS) - Ta usługa służy do wykonywania operacji ETL dla różnych typów danych z wielu źródeł danych.

Teraz, gdy wiesz, co to jest MS SQL Server, przejdźmy dalej w tym artykule na temat samouczka SQL Server i zrozumiemy, jak zainstalować i skonfigurować SQL Server.

Zainstaluj SQL Server

Wykonaj poniższe czynności, aby zainstalować program SQL Server:

Krok 1: Przejdź do oficjalnej strony Pobieranie programu Microsoft SQL Server , gdzie znajdziesz opcję zainstalowania programu SQL Server lokalnie lub w chmurze.

Krok 2: Teraz przewiń w dół, a zobaczysz dwie opcje: Wersja Developer i Enterprise . Tutaj będę pobierać plik Wersja deweloperska . Aby pobrać, wystarczy kliknąć plik Pobierz teraz opcja. Patrz poniżej.

Krok 3: Po pobraniu aplikacji kliknij dwukrotnie plik, a zobaczysz następujące okno.

Krok 4: Teraz możesz wybrać jedną z 3 opcji konfiguracji SQL Server. Tutaj po prostu wybiorę Opcja podstawowa . Po wybraniu opcji typu instalacji następnym ekranem byłoby zaakceptowanie umowy licencyjnej. Aby to zrobić, kliknij Zaakceptować w następnym oknie.

Krok 5: Następnie musisz określić lokalizację instalacji programu SQL Server. Następnie musisz kliknąć Zainstaluj.

Po kliknięciu zainstalować zobaczysz, że pobierane są wymagane pakiety. Teraz, po zakończeniu instalacji, zobaczysz następujący ekran:

Tutaj możesz przejść dalej i kliknąć Połącz teraz lub dostosować instalację. Dla lepszego zrozumienia pójdę dalej i dokonam wyboru Dostosuj.

Krok 6: Po kliknięciu Dostosuj w powyższym oknie zobaczysz otwierający się następujący kreator. w następnym oknie kliknij Kolejny.

Krok 7: Po automatycznym zainstalowaniu reguł kliknij Kolejny . Patrz poniżej.

Krok 8: Następnie musisz wybrać typ instalacji. Więc wybierz Wykonaj nowa instalacja SQL Server 2017 opcję, a następnie kliknij Kolejny.

Krok 9: W otwartym kreatorze wybierz edycję: Deweloper. Następnie kliknij Kolejny . Patrz poniżej.

Krok 10: Teraz przeczytaj i zaakceptuj umowy licencyjne, zaznaczając przycisk opcji, a następnie kliknij Kolejny . Patrz poniżej.

Krok 11: W poniższym kreatorze możesz wybrać funkcje, które chcesz zainstalować. Możesz także wybrać katalog główny instancji, a następnie kliknąć Kolejny . Tutaj wybiorę Usługi aparatu bazy danych .

Krok 12: Następnie musisz nazwać instancję, a identyfikator instancji zostanie automatycznie utworzony. Tutaj nazwę instancji „edureka”. Następnie kliknij Kolejny.

Krok 13: W kreatorze konfiguracji serwera kliknij Kolejny .

Krok 14: Teraz musisz włączyć tryby uwierzytelniania. Tutaj zobaczysz plik Tryb uwierzytelniania systemu Windows i Tryb mieszany . Wybieram tryb mieszany. Następnie podaj hasło, a następnie dodam bieżącego użytkownika jako Administrator wybierając plik Dodaj bieżącego użytkownika opcja.

Krok 15: Następnie wybierz ścieżkę do pliku konfiguracyjnego i kliknij zainstalować .

Po zakończeniu instalacji zobaczysz następujący ekran:

Połącz się z programem SQL Server za pomocą programu SSMS

Po zainstalowaniu programu SQL Server następnym krokiem jest połączenie programu SQL Server z programem SQL Server Management Studio. Aby to zrobić, wykonaj poniższe czynności:

Krok 1: Wróć do następnego okna i kliknij plik zainstaluj SSMS opcja.

Krok 2: Po kliknięciu tej opcji zostaniesz przekierowany do następną stronę , gdzie musisz wybrać Pobierz SSMS.

Krok 3: Po pobraniu instalacji kliknij dwukrotnie aplikację, a zostanie wyświetlony następujący kreator.

Krok 4: Kliknij Opcja instalacji , w powyższym oknie, a zobaczysz, że instalacja się rozpocznie.

Krok 5: Po zakończeniu instalacji pojawi się okno dialogowe, jak pokazano poniżej.

Po zainstalowaniu programu SSMS następnym krokiem jest uzyskanie dostępu do Silnik bazy danych .

Uzyskiwanie dostępu do aparatu bazy danych

Po otwarciu pliku Studio zarządzania serwerem SQL z menu startowe , otworzy się okno podobne do okna pokazanego na poniższym obrazku.

W tym miejscu podaj nazwę serwera, tryb uwierzytelniania i kliknij Połączyć.

Po kliknięciu Połączyć , zobaczysz następujący ekran.

Cóż, ludzie, w ten sposób instalujesz i konfigurujesz SQL Server. Przechodząc do przodu w tym samouczku dotyczącym SQL Server, pozwól nam zrozumieć różne składniki architektury SQL Server.

Architektura SQL Server

Architektura SQL Server jest następująca:

  • serwer & minus Tutaj są instalowane usługi SQL i rezyduje baza danych
  • Silnik relacyjny & minus Zawiera parser zapytań, optymalizator i moduł wykonawczy, a wykonanie odbywa się w silniku relacyjnym.
  • Parser poleceń & minus Sprawdza składnię zapytania i konwertuje zapytanie na język maszynowy.
  • Optimizer & minus Przygotowuje plan wykonania jako wyjście, biorąc dane wejściowe ze statystyk, zapytań i drzewa algebratora.
  • Query Executor & minus Jest to miejsce, w którym zapytania są wykonywane krok po kroku
  • Silnik pamięci masowej & minus Odpowiada za przechowywanie i odzyskiwanie danych w systemie pamięci masowej, manipulowanie danymi, zarządzanie i blokowanie transakcji.

Teraz, gdy wiesz, jak skonfigurować i zainstalować SQL Server i jego różne składniki, zacznijmy od pisania Serwer. Ale wcześniej pozwolę sobie na omówienie sposobu pisania komentarzy w SQL Server.

Komentarze w SQL Server

Istnieją dwa sposoby komentowania w SQL, tj. Albo użyj s komentarze w linii prostej albo m komentarze ulti-line .

Komentarze jednowierszowe

Komentarze jednowierszowe zaczynają się od dwa myślniki (-). Stąd tekst wymieniony po (-) do końca pojedynczej linii zostanie zignorowany przez kompilator.

Przykład:

- przykład komentarzy w jednym wierszu

Komentarze wielowierszowe

Komentarze wieloliniowe zaczynają się od / * i kończą na * / . Stąd wspomniany tekst / * i * / zostaną zignorowane przez kompilator.

Przykład:

/ * Przykład komentarzy wielowierszowych * /

Teraz w tym artykule dotyczącym samouczka SQL Server zacznijmy od pierwszego zestawu poleceń, tj. Poleceń języka definicji danych.

Polecenia języka definicji danych

W tej części artykułu dowiesz się, jakie polecenia są polecenia, za pomocą których możesz zdefiniować swoją bazę danych. Polecenia są następujące:

STWÓRZ

Ta instrukcja służy do tworzenia tabeli, bazy danych lub widoku.

Instrukcja „CREATE DATABASE”

Ta instrukcja służy do tworzenia bazy danych.

Składnia

UTWÓRZ BAZY DANYCH NazwaBazy danych

Przykład

UTWÓRZ BAZĘ DANYCH Studentów

UTWÓRZ TABELĘ „Oświadczenie

Jak sama nazwa wskazuje, ta instrukcja służy do tworzenia tabeli.

Składnia

CREATE TABLE TableName (typ danych Kolumna1, Typ danych Kolumna2, Typ danych Kolumna3, typ danych KolumnaN)

Przykład

CREATE TABLE StudentInfo (StudentID int, StudentName varchar (8000), ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000), City varchar (8000), Country varchar (8000))

UPUSZCZAĆ

Ta instrukcja służy do usuwania istniejącej tabeli, bazy danych lub widoku.

Instrukcja „DROP DATABASE”

Ta instrukcja służy do usuwania istniejącej bazy danych. Pełne informacje obecne w bazie danych zostaną utracone, gdy tylko wykonasz poniższe polecenie.

Składnia

DROP DATABASE DatabaseName

Przykład

DROP DATABASE Studenci

Instrukcja „DROP TABLE”

Ta instrukcja służy do usuwania istniejącej tabeli. Pełne informacje zawarte w tabeli zostaną utracone, gdy tylko wykonasz poniższe polecenie.

Składnia

DROP TABLE TableName

Przykład

DROP TABLE StudentInfo

WIEK

Polecenie ALTER służy do dodawania, usuwania lub modyfikowania kolumn lub ograniczeń w istniejącej tabeli.

ALTER TABELA „Oświadczenie

Ta instrukcja służy do dodawania, usuwania i modyfikowania kolumn w istniejącej tabeli.

Instrukcja „ALTER TABLE” z kolumną ADD / DROP

Instrukcja ALTER TABLE jest używana z poleceniem ADD / DROP Column do dodawania i usuwania kolumny.

Składnia

ALTER TABLE TableName ADD ColumnName Typ danych ALTER TABLE TableName DROP COLUMN ColumnName

Przykład

--DODAJ Column BloodGroup: ALTER TABLE StudentInfo DODAJ BloodGroup varchar (8000) --DROP Column BloodGroup: ALTER TABLE StudentInfo DROP COLUMN BloodGroup

Instrukcja „ALTER TABLE” z ALTER COLUMN

Instrukcja ALTER TABLE może być używana z kolumną ALTER do zmiany typu danych istniejącej kolumny w tabeli.

Składnia

ALTER TABLE TableName ALTER COLUMN ColumnName Typ danych

Przykład

- Dodaj kolumnę DOB i zmień typ danych z daty na datę i godzinę. ALTER TABLE StudentInfo DODAJ DOB date ZMIEŃ TABELĘ StudentInfo ZMIEŃ KOLUMNĘ DOB datetime

ŚCIĘTY

To polecenie SQL służy do usuwania informacji znajdujących się w tabeli, ale nie usuwa samej tabeli. Tak więc, jeśli chcesz usunąć informacje obecne w tabeli, a nie usunąć samą tabelę, musisz użyć polecenia TRUNCATE. W przeciwnym razie użyj polecenia DROP.

Składnia

TRUNCATE TABLE TableName

Przykład

TABELA TRUNCATE StudentInfo

PRZEMIANOWAĆ

Ta instrukcja służy do zmiany nazwy jednej lub wielu tabel.

Składnia

sp_rename 'OldTableName', 'NewTableName'

Przykład

sp_rename 'StudentInfo', 'Infostudents'

Przechodząc dalej w tym artykule dotyczącym samouczka SQL Server, pozwól nam zrozumieć różne typy danych obsługiwane przez SQL Server.

Typy danych programu SQL Server

Kategoria typu danych Nazwa typu danych Opis Zakres / składnia
Dokładne liczby numerycznySłuży do przechowywania wartości liczbowych ze stałą dokładnością i skalą- 10 ^ 38 +1 do 10 ^ 38 - 1.
tinyintSłuży do przechowywania wartości całkowitychOd 0 do 255
smallintSłuży do przechowywania wartości całkowitychOd -2 ^ 15 (-32 768) do 2 ^ 15-1 (32767)
bigintSłuży do przechowywania wartości całkowitych-2 ^ 63 (-9 223 372 036 854 775 808) do 2 ^ 63-1 (9 223 372 036 854 775 807)
intSłuży do przechowywania wartości całkowitychOd -2 ^ 31 (-2 147 483 648) do 2 ^ 31-1 (2 147 483 647)
kawałekPrzechowuje dane typu integer, które przekazują wartość 0, 1 lub NULL0, 1 lub NULL
dziesiętnySłuży do przechowywania wartości liczbowych ze stałą dokładnością i skalą- 10 ^ 38 +1 do 10 ^ 38 - 1.
małe pieniądzeSłuży do przechowywania pieniędzylub wartości walutowe.- 214 748,3648 do 214 748,3647
pieniądzeSłuży do przechowywania pieniędzylub wartości walutowe.-922.337.203.685.477,5808 do 922.337.203.685.477,5807 (-922.337.203.685.477,58
do 922.337.203.685.477,58 dla Informatica.
Przybliżone liczby pływakSłuży do przechowywania zmiennoprzecinkowych danych liczbowych- 1,79E + 308 do -2,23E-308, 0 i 2,23E-308 do 1,79E + 308
realSłuży do przechowywania zmiennoprzecinkowych danych liczbowych- 3,40E + 38 do -1,18E - 38, 0 i 1,18E - 38 do 3,40E + 38
Data i godzina dataSłuży do definiowania daty w programie SQL Server.Składnia: data
smalldatetimeSłuży do definiowania daty łączonej z porą dnia, w której czas jest oparty na 24-godzinnym dniu, z sekundami zawsze równymi zero (: 00) i bez ułamków sekund.Składnia: smalldatetime
datetimeSłuży do definiowania daty, która jest łączona z godziną dnia z ułamkami sekund na podstawie zegara 24-godzinnego.Składnia: datetime
datetime2 datetime2 jest rozszerzeniem istniejącego datetime typ, który ma większą domyślną dokładność ułamkową i duży zakres dat.Składnia: datetime2
datetimeoffsetSłuży do definiowania daty połączonej z porą dnia o określonej strefie czasowej. Jest oparty na zegarze 24-godzinnym.Składnia: datetimeoffset
czasSłuży do określenia pory dnia.Składnia: czas
Ciągi znaków zwęglaćSłuży do przechowywania znaków o stałym rozmiarze.zwęglać[( n )] gdzie wartość n waha się od 1 do 8 000
varcharSłuży do przechowywania znaków o zmiennej długości.varchar [( n | max)], gdzie wartość n waha się od 1 do 8000, a maksymalna dozwolona pojemność to 2 GB.
tekstUżywany do przechowywania vdane o zmiennej długości nie w UnicodeMaksymalna dozwolona długość ciągu - 2 ^ 31-1 (2,147,483,647)
Ciągi znaków Unicode ncharSłuży do przechowywania znaków o stałym rozmiarze.nchar[(n)] gdzie wartość n waha się od 1-4000
nvarcharSłuży do przechowywania znaków o zmiennej długości.varchar [( n | max)], gdzie wartość n waha się od 1 do 4000, a maksymalna dozwolona pojemność to 2 GB.
ntextSłuży do przechowywania danych Unicode o zmiennej długościMaksymalna dozwolona długość ciągu - 2 ^ 30-1 (2,147,483,647)
Ciągi binarne dwójkowySłuży do przechowywania binarnych typów danych o stałej długościdwójkowy[( n )] gdzie wartość n waha się od 1 do 8 000
varbinarySłuży do przechowywania binarnych typów danych o stałej długościvarbinary[( n )], gdzie wartość n waha się od 1 do 8000, a maksymalna dozwolona wielkość pamięci to 2 ^ 31-1 bajtów.
wizerunekSłuży do przechowywania danych binarnych o zmiennej długości0 - 2 ^ 31-1 (2 147 483 647) bajtów
Inne typy danych Jest to typ danych dla procedury składowanej lub parametrów OUTPUT zmiennych, które zawierają odwołanie do kursora.-
wierszwersjaSłuży do ujawniania automatycznie generowanych, unikalnych liczb binarnych w bazie danych.-
hierarchyidUżywane do przedstawiania pozycji w hierarchii.-
unikalny identyfikatorTo 16-bajtowy identyfikator GUID.Składnia:unikalny identyfikator
sql_variantSłuży do przechowywania wartości różnych typów danych obsługiwanych przez SQL ServerSkładnia: sql_variant
xmlSłuży do przechowywania typu danych XML.

xml ([TREŚĆ | DOKUMENT] xml_schemacollection)

Typy geometrii przestrzennejUżywany do reprezentowania danych w euklidesowym (płaskim) układzie współrzędnych.-
Typy geografii przestrzennejUżywane do przechowywania danych elipsoidalnych (okrągłej ziemi), takich jak współrzędne geograficzne GPS.-
stółSłuży do przechowywania zestawu wyników do późniejszego przetworzenia-

Następnie w tym artykule pozwól nam zrozumieć różne typy kluczy i ograniczeń w bazie danych.

Różne typy kluczy w bazie danych

Poniżej przedstawiono różne typy kluczy używanych w bazie danych:

  • Klucz kandydata - Klucz kandydata to zestaw atrybutów, które mogą jednoznacznie identyfikować tabelę. Tabela może mieć więcej niż jeden klucz kandydujący, a spośród wybranych kluczy kandydujących jeden klucz jest wybierany jako klucz podstawowy.
  • Super klucz - Zestaw atrybutów może jednoznacznie identyfikować krotkę. Zatem klucze kandydujące, unikalne klucze i klucze podstawowe są super kluczami, ale odwrotnie nie jest prawdą.
  • Klucz podstawowy - Klucze podstawowe są używane do jednoznacznego identyfikowania każdej krotki.
  • Alternatywny klucz - Klucze alternatywne to te klucze kandydujące, które nie zostały wybrane jako klucz podstawowy.
  • Unikalny klucz- Klucze unikatowe są podobne do klucza podstawowego, ale zezwalają na pojedynczą wartość NULL w kolumnie.
  • Klucz obcy - Atrybut, który może przyjmować tylko wartości obecne jako wartości innego atrybutu, to klucz obcy do atrybutu, do którego się odnosi.
  • Klucz złożony- Klucze złożone to połączenie dwóch lub więcej kolumn, które jednoznacznie identyfikują każdą krotkę.

Ograniczenia używane w bazie danych

Ograniczenia są używane w bazie danych do określenia reguł dla danych przechowywanych w tabeli. Różne typy ograniczenia w SQL są następujące:

NIE JEST ZEREM

Ograniczenie NOT NULL gwarantuje, że kolumna nie może mieć wartości NULL.

Przykład

CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000)) --NOT NULL w ALTER TABLE ALTER TABLE StudentsInfo ALTER COLUMN PhoneNumber int NOT NULL

WYJĄTKOWY

To ograniczenie zapewnia, że ​​wszystkie wartości w kolumnie są unikatowe.

Przykład

--UNIQUE on Create Table CREATE TABLE StudentsInfo (StudentID int NOT NULL UNIQUE, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar ( 8000)) --UNIQUE w wielu kolumnach CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Miasto varchar (8000), Kraj varchar (8000) CONSTRAINT UC_Student_Info UNIQUE (StudentID, PhoneNumber)) --UNIQUE on ALTER TABLE ALTER TABLE StudentsInfo DODAJ UNIQUE (StudentID) - Aby usunąć UNIKALNE ograniczenie ALTER TABLE StudentsInfo DROP CONSTRAINT UC_Student_Info

CZEK

Ograniczenie CHECK zapewnia, że ​​wszystkie wartości w kolumnie spełniają określony warunek.

Przykład

--CHECK Ograniczenie dotyczące CREATE TABLE CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar ( 8000) CHECK (Kraj = 'Indie')) --CHECK Ograniczenie w wielu kolumnach CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Miasto varchar (8000), Kraj varchar (8000) SPRAWDŹ (Kraj = 'Indie' AND Miasto = 'Hyderabad')) - SPRAWDŹ Ograniczenie w ALTER TABLE ALTER TABLE StudentsInfo DODAJ SPRAWDZANIE (Kraj = 'Indie') - Aby podać name do CHECK Constraint ALTER TABLE StudentsInfo DODAJ OGRANICZENIE CheckConstraintName CHECK (Kraj = 'Indie') - Aby porzucić sprawdzanie ograniczenia ALTER TABLE StudentsInfo DROP CONSTRAINT CheckConstraintName

DOMYŚLNA

Ograniczenie DEFAULT składa się z zestawu wartości domyślnych dla kolumny, gdy nie określono żadnej wartości.

Przykład

--DEFAULT Ograniczenie dotyczące CREATE TABLE CREATE TABLE StudentsInfo (StudentID int, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000) DEFAULT 'India') --DEFAULT Constraint on ALTER TABLE ALTER TABLE StudentsInfo ADD CONSTRAINT defau_Country DEFAULT 'India' FOR Country - Aby usunąć domyślne ograniczenie ALTER TABLE StudentsInfo ALTER COLUMN Country DROP defau_Country

INDEKS

Plik Ograniczenie INDEX służy do tworzenia indeksów w tabeli, dzięki którym można bardzo szybko tworzyć i pobierać dane z bazy danych.

Składnia

- Utwórz indeks, w którym dozwolone są zduplikowane wartości. CREATE INDEX IndexName ON TableName (Column1, Column2, ... ColumnN) - Utwórz indeks, w którym zduplikowane wartości są niedozwolone. CREATE UNIQUE INDEX IndexName ON TableName (Column1, Column2, ... KolumnaN)

Przykład

UTWÓRZ INDEKS idex_StudentName ON StudentsInfo (StudentName) - aby usunąć indeks w tabeli DROP INDEX StudentsInfo.idex_StudentName

Przechodząc dalej w tym artykule na temat samouczka SQL Server, przyjrzyjmy się teraz różnym poleceniom języka manipulacji danymi używanymi w Microsoft SQL Server.

Polecenia języka manipulacji danymi

W tej sekcji artykułu zostaną omówione wszystkie polecenia, za pomocą których można manipulować bazą danych. Polecenia są następujące:

Oprócz tych poleceń istnieją również inne operatory / funkcje manipulacyjne, takie jak:

POSŁUGIWAĆ SIĘ

Ta instrukcja służy do wybierania bazy danych w celu rozpoczęcia wykonywania na niej różnych operacji.

Składnia

UŻYJ DatabaseName

Przykład

UŻYWAJ Uczniów

WŁÓŻ W

Plik Instrukcja INSERT INTO służy do wstawiania nowych rekordów do istniejącej tabeli.

Składnia

INSERT INTO TableName (Column1, Column2, Column3, ..., ColumnN) VALUES (wartość1, wartość2, wartość3, ...) - Jeśli nie chcesz wymieniać nazw kolumn, użyj poniższej składni INSERT INTO TableName VALUES (Wartość1, Wartość2, Wartość3, ...)

Przykład

INSERT INTO StudentsInfo (StudentID, StudentName, ParentName, PhoneNumber, AddressofStudent, City, Country) VALUES ('06', 'Sanjana', 'Kapoor', '9977331199', 'Buffalo Street House No 10', 'Kalkuta', 'Indie ') INSERT INTO StudentsInfo VALUES (' 07 ',' Vishal ',' Mishra ',' 9876509712 ',' Nice Road 15 ',' Pune ',' India ')

AKTUALIZACJA

Instrukcja UPDATE służy do modyfikowania lub aktualizowania rekordów już obecnych w tabeli.

Składnia

UPDATE TableName SET Kolumna1 = Wartość1, Kolumna2 = Wartość2, ... Warunek WHERE

Przykład

UPDATE StudentsInfo SET StudentName = 'Aahana', City = 'Ahmedabad' WHERE StudentID = 1

USUNĄĆ

Instrukcja DELETE służy do usuwania istniejących rekordów w tabeli.

Składnia

DELETE FROM TableName WHERE warunek

Przykład

USUŃ FROM StudentsInfo WHERE StudentName = 'Aahana'

UDAĆ SIĘ

Instrukcja MERGE służy do wykonywania operacji INSERT, UPDATE i DELETE na określonej tabeli, w której znajduje się tabela źródłowa. Patrz poniżej.

Składnia

ŁĄCZENIE TagretTableName KORZYSTANIE Z SourceTableName NA MergeCondition GDY DOPASOWANE TO Update_Statement, GDY NIE DOPASOWANE, TO Wstaw_Statement, JEŚLI NIE DOPASOWANE PRZEZ ŹRÓDŁO, A następnie USUŃ

Przykład

Aby zrozumieć instrukcję MERGE, rozważ poniższe tabele jako tabelę źródłową i tabelę docelową.

Tabela źródłowa:

Legitymacja studencka StudentName Znaki
jedenNienawidzę87
2Manasa92
4Anay74

Tabela docelowa:

Legitymacja studencka StudentName Znaki
jedenNienawidzę87
2Manasa67
3Saurabh55
ŁĄCZENIE SampleTargetTable TARGET PRZY UŻYCIU SampleSourceTable SOURCE ON (TARGET.StudentID = SOURCE.StudentID) WHEN MATCHED AND TARGET.StudentName SOURCE.StudentName OR TARGET.Marks SOURCE.Marks THEN UPDATE SET TARGET.Student.StudentName = SOURGET.Student. JEŚLI NIE DOPASOWANE PRZEZ TARGET TO WSTAW (StudentID, StudentName, Marks) WARTOŚCI (SOURCE.StudentID, SOURCE.StudentName, SOURCE.Marks), GDY NIE DOPASOWANE PRZEZ ŹRÓDŁO, A następnie USUŃ

Wynik

Legitymacja studencka StudentName Znaki
jedenNienawidzę87
2Manasa92
4Anay74

WYBIERZ

Plik Instrukcja SELECT służy do wybierania danych z bazy danych, tabeli lub widoku. Zwrócone dane są przechowywane w tabeli wynikowej o nazwie zestaw wyników .

zastosowania analizy dużych zbiorów danych

Składnia

SELECT Column1, Column2, ... ColumN FROM TableName - (*) służy do wybrania wszystkich z tabeli SELECT * FROM table_name - Aby wybrać liczbę rekordów do zwrócenia, użyj: SELECT TOP 3 * FROM TableName

Przykład

- Aby wybrać kilka kolumn SELECT StudentID, StudentName FROM StudentsInfo - (*) służy do wybrania wszystkich z tabeli SELECT * FROM StudentsInfo - Aby wybrać liczbę rekordów do zwrócenia, użyj: SELECT TOP 3 * FROM StudentsInfo

Możemy również użyć następujących słów kluczowych z instrukcją SELECT:

ODRĘBNY

Słowo kluczowe DISTINCT jest używane z instrukcją SELECT w celu zwrócenia tylko różnych wartości.

Składnia

SELECT DISTINCT Kolumna1, Kolumna2, ... KolumnaN FROM TableName

Przykład

WYBIERZ DISTINCT PhoneNumber FROM StudentsInfo

ZAMÓW PRZEZ

Ta instrukcja służy do sortowania wymaganych wyników w kolejności rosnącej lub malejącej. Domyślnie wyniki są przechowywane w kolejności rosnącej. Jeśli jednak chcesz uzyskać wyniki w porządku malejącym, musisz użyć rozszerzenia DESC słowo kluczowe.

Składnia

SELECT Column1, Column2, ... ColumnN FROM TableName ORDER BY Column1, Column2, ... ASC | DESC

Przykład

- Wybierz wszystkich uczniów z tabeli „StudentsInfo” posortowanej według ParentName: SELECT * FROM StudentsInfo ORDER BY ParentName - Wybierz wszystkich uczniów z tabeli „StudentsInfo” posortowanej malejąco według ParentName: SELECT * FROM StudentsInfo ORDER BY ParentName DESC - Wybierz wszystkich uczniów z tabeli „StudentsInfo” posortowanej według ParentName i StudentName: SELECT * FROM StudentsInfo ORDER BY ParentName, StudentName / * Wybierz wszystkich uczniów z tabeli „StudentsInfo” posortowanych według ParentName w porządku malejącym i StudentName w porządku rosnącym: * / SELECT * FROM StudentsInfo ORDER BY ParentName ASC, StudentName DESC

GRUPUJ WEDŁUG

Ta instrukcja jest używana z funkcje agregujące aby pogrupować zestaw wyników według co najmniej jednej kolumny.

Składnia

SELECT Column1, Column2, ..., ColumnN FROM TableName WHERE Warunek GROUP BY ColumnName (y) ORDER BY ColumnName (y)

Przykład

- Aby wymienić liczbę studentów z każdego miasta. WYBIERZ LICZBĘ (ID studenta), miasto od StudentsInfo GRUPA WEDŁUG MIASTA

ZESTAWY GRUPOWANE

ZESTAWY GRUPOWANIA zostały wprowadzone w SQL Server 2008, używane do generowania zestawu wyników, który może być generowany przez plik UNIA WSZYSTKO wielu prostych klauzul GROUP BY.

Składnia

SELECT ColumnNames (s) FROM TableName GROUP BY GROUPING SETS (ColumnName (s))

Przykład

Wybierz StudentID, StudentName, COUNT (City) z StudentsInfo Group WEDŁUG ZESTAWÓW GRUPOWANIA ((StudentID, StudentName, City), (StudentID), (StudentName), (City))

MAJĄCY

Ta klauzula jest używana w scenariuszu, w którym Słowo kluczowe WHERE nie może być użyty.

Składnia

SELECT ColumnName (s) FROM TableName WHERE Warunek GROUP BY ColumnName (s) HAVING Condition ORDER BY ColumnName (s)

Przykład

WYBIERZ LICZBĘ (StudentID), miasto od StudentsInfo GRUPA WEDŁUG MIASTA Z LICZBĄ (StudentID)> 2 ZAMÓWIENIE WEDŁUG LICZBA (StudentID) DESC

W

Słowo kluczowe INTO może być używane z Instrukcja SELECT kopiować dane z jednej tabeli do drugiej. Cóż, możesz zrozumieć te tabele jako tabele tymczasowe. Tabele tymczasowe są zwykle używane do wykonywania operacji na danych zawartych w tabeli, bez naruszania oryginalnej tabeli.

Składnia

SELECT * INTO NewTable [IN ExternalDB] FROM OldTable Warunek WHERE

Przykład

- Aby utworzyć kopię zapasową tabeli „StudentsInfo” WYBIERZ * INTO StudentsBackup FROM StudentsInfo - Aby wybrać tylko kilka kolumn z StudentsInfo, SELECT StudentName, PhoneNumber INTO StudentsDetails FROM StudentsInfo SELECT * INTO PuneStudents FROM StudentsInfo WHERE City = „Pune”

SZEŚCIAN

CUBE jest rozszerzeniem Klauzula GROUP BY . Pozwala na generowanie sum częściowych dla wszystkich kombinacji kolumn grupujących określonych w klauzuli GROUP BY.

Składnia

SELECT ColumnName (s) FROM TableName GROUP BY CUBE (ColumnName1, ColumnName2, ....., ColumnNameN)

Przykład

SELECT StudentID, COUNT (City) FROM StudentsInfo GROUP BY CUBE (StudentID) ORDER BY StudentID

ROLLUP

ROLLUP jest rozszerzeniem klauzuli GROUP BY. Pozwala to na dołączenie dodatkowych wierszy, które reprezentują sumy częściowe. Są one określane jako wiersze superagregowane wraz z wierszem sumy całkowitej.

Składnia

SELECT ColumnName (s) FROM TableName GROUP BY ROLLUP (ColumnName1, ColumnName2, ....., ColumnNameN)

Przykład

SELECT StudentID, COUNT (City) FROM StudentsInfo GROUP BY ROLLUP (StudentID)

OFFSETOWY

Klauzula OFFSET jest używana z poleceniami SELECT i ORDER BY oświadczenie aby pobrać szereg rekordów. Musi być używany z klauzulą ​​ORDER BY, ponieważ nie może być używany samodzielnie. Ponadto podany zakres musi być równy lub większy od 0. Jeśli podasz wartość ujemną, oznacza to błąd.

Składnia

SELECT ColumnNames) FROM TableName WHERE Warunek ORDER BY ColumnNames (s) OFFSET RowsToSkip ROWS

Przykład

Rozważ nową kolumnę Znaki w StudentsInfo stół.

SELECT StudentName, ParentName FROM StudentsInfo ORDER BY Marks OFFSET 1 ROWS

SPROWADZAĆ

Klauzula FETCH służy do zwracania zestawu liczby wierszy. Musi być używany w połączeniu z klauzulą ​​OFFSET.

Składnia

SELECT ColumnNames) FROM TableName WHERE Warunek ORDER BY ColumnName (s) OFFSET RowsToSkip FETCH NEXT NumberOfRows ROWS ONLY

Przykład

SELECT StudentName, ParentName FROM StudentsInfo KOLEJNOŚĆ WEDŁUG OZNACZENIA PRZESUNIĘCIE 1 RZĘDY POBIERZ TYLKO NASTĘPNE 1 WIERSZE

TOP

Klauzula TOP jest używana z instrukcją SELECT w celu podania liczby rekordów do zwrócenia.

Składnia

SELECT TOP Number ColumnName (s) FROM TableName WHERE Warunek

Przykład

WYBIERZ TOP 3 * Z StudentsInfo

SWORZEŃ

PIVOT służy do obracania wierszy do wartości kolumn i uruchamia agregacje, gdy jest to wymagane, na pozostałych wartościach kolumn.

Składnia

SELECT NonPivoted ColumnName, [First Pivoted ColumnName] AS ColumnName, [Second Pivoted ColumnName] AS ColumnName, [Third Pivoted ColumnName] AS ColumnName, ... [Last Pivoted ColumnName] AS ColumnName FROM (zapytanie SELECT, które generuje dane) AS [alias dla początkowego zapytania] PIVOT ([AggregationFunction] (ColumName) FOR [ColumnName kolumny, której wartości staną się nagłówkami kolumn] IN ([First Pivoted ColumnName], [Second Pivoted ColumnName], [Third Pivoted ColumnName] ... [ostatni kolumna przestawna])) AS [alias tabeli przestawnej]

Przykład

Aby uzyskać szczegółowy przykład, możesz odwołać się do mój artykuł na temat SQL PIVOT i UNPIVOT . Następnie w tym samouczku dotyczącym SQL Server przyjrzyjmy się różnym operatorom obsługiwanym przez Microsoft SQL Server.

Operatorzy

Plik różne typy operatorów obsługiwane przez SQL Server są następujące:

Omówmy każdy z nich jeden po drugim.

Operatory arytmetyczne

Operator Znaczenie Składnia

+

Dodanie

wyrażenie + wyrażenie

-

Odejmowanie

wyrażenie - wyrażenie

*

Mnożenie

wyrażenie * wyrażenie

/

Divison

wyrażenie / wyrażenie

%

Modularny

wyrażenie% wyrażenie

Operatory przypisania

Operator Znaczenie Składnia

=

Przypisz wartość do zmiennej

zmienna = „wartość”

Operatory bitowe

Operator Znaczenie Składnia

& (Bitowe AND)

Służy do wykonywania bitowej operacji logicznej AND między dwiema wartościami całkowitymi.

wyrażenie i wyrażenie

& = (Przypisanie bitowe AND)

Służy do wykonywania bitowej operacji logicznej AND między dwiema wartościami całkowitymi. Ustawia również wartość na wyjściu operacji.

wyrażenie & = wyrażenie

| (Bitowe LUB)

Służy do wykonywania bitowej operacji logicznej OR między dwiema wartościami całkowitymi, tłumaczonymi na wyrażenia binarne w instrukcjach języka Transact-SQL.

wyrażenie | wyrażenie

| = (Przypisanie bitowe LUB)

Służy do wykonywania bitowej operacji logicznej OR między dwiema wartościami całkowitymi, tłumaczonymi na wyrażenia binarne w instrukcjach języka Transact-SQL. Ustawia również wartość na wyjściu operacji.

wyrażenie | = wyrażenie

^ (Wyłączne w bitach LUB)

Służy do wykonywania bitowej operacji wyłącznej OR między dwiema wartościami całkowitymi.

wyrażenie ^ wyrażenie

^ = (Wyłączność bitowa LUB przypisanie)

Służy do wykonywania bitowej operacji wyłącznej OR między dwiema wartościami całkowitymi. Ustawia również wartość na wyjściu operacji.

wyrażenie ^ = wyrażenie

~ (Bitowe NIE)

Służy do wykonywania bitowej operacji logicznej NIE na wartości całkowitej.

~ wyrażenie

Operatory porównania

Operator Znaczenie Składnia

=

Równy

wyrażenie = wyrażenie

>

Lepszy niż

wyrażenie> wyrażenie

<

Mniej niż

wyrażenie

> =

Większy lub równy

wyrażenie> = wyrażenie

<=

Mniejszy lub równy

wyrażenie<= expression

Nie równa się

wyrażenie wyrażenie

! =

Nie równa się

wyrażenie! = wyrażenie

!<

Nie mniej niż

wyrażenie !

!>

Nie większe niż

wyrażenie!> wyrażenie

Operatory złożone

Operator Znaczenie Składnia

+ =

Służy do dodawania wartości do oryginalnej wartości i ustawiania oryginalnej wartości w wyniku.

wyrażenie + = wyrażenie

rzutowanie typów w java z przykładem

- =

Służy do odejmowania wartości od oryginalnej wartości i ustawiania oryginalnej wartości na wynik.

wyrażenie - = wyrażenie

* =

Służy do mnożenia wartości do oryginalnej wartości i ustawiania oryginalnej wartości na wynik.

wyrażenie * = wyrażenie

/ =

Służy do dzielenia wartości od wartości oryginalnej i ustawiania oryginalnej wartości na wynik.

wyrażenie / = wyrażenie

% =

Służy do dzielenia wartości od wartości oryginalnej i ustawiania oryginalnej wartości na wynik.

wyrażenie% = wyrażenie

& =

Służy do wykonywania bitowej operacji AND i ustawiania oryginalnej wartości na wynik.

wyrażenie & = wyrażenie

^ =

Służy do wykonywania bitowej operacji wyłącznej OR i ustawiania oryginalnej wartości na wynik.

wyrażenie ^ = wyrażenie

| =

Służy do wykonywania bitowej operacji LUB i ustawiania oryginalnej wartości na wynik.

wyrażenie | = wyrażenie

Operatory logiczne

Operator Znaczenie Składnia

WSZYSTKO

Zwraca wartość TRUE, jeśli wszystkie porównania mają wartość TRUE.

scalar_expression! = ALL (podzapytanie)

I

Zwraca wartość TRUE, jeśli oba wyrażenia mają wartość TRUE.

boolean_expression AND boolean_expression

KAŻDY

Zwraca PRAWDA, jeśli którekolwiek z porównań ma wartość PRAWDA.

scalar_expression! = {ANY} (podzapytanie)

POMIĘDZY

Zwraca wartość TRUE, jeśli operand należy do zakresu.

sampleexpression [NIE] MIĘDZY wyrażeniem początkowym a wyrażeniem końcowym

ISTNIEJE

Zwraca wartość TRUE, jeśli podzapytanie zawiera jakiekolwiek wiersze.

ISTNIEJE (zapytanie podrzędne)

W

Zwraca TRUE, jeśli operand jest równy jednemu z listy wyrażeń.

test_expression [NIE] W (podzapytanie | wyrażenie [,… n])

LUBIĆ

Zwraca wartość TRUE, jeśli operand pasuje do wzorca.

match_expression [NOT] LIKE wzorzec [ESCAPE escape_character]

NIE

Odwraca wartość dowolnego operatora logicznego.

[NIE] boolean_expression

LUB

Zwraca wartość TRUE, jeśli jedno z wyrażeń logicznych ma wartość TRUE.

boolean_expression LUB boolean_expression

TROCHĘ

przekazywanie argumentów wiersza poleceń w java

Zwraca wartość PRAWDA, jeśli niektóre ze zbioru porównań mają wartość PRAWDA.

scalar_expression<= { SOME} ( subquery )

Operatorzy rozstrzygania zakresu

Operator Znaczenie Przykład

::

Zapewnia dostęp do statycznych elementów członkowskich złożonego typu danych. Złożone typy danych to te typy danych, które zawierają wiele metod i proste typy danych. Złożone typy danych Obejmują one wbudowane typy CLR i niestandardowe typy zdefiniowane przez użytkownika (UDT) SQLCLR.

DECLARE @hid hierarchyid SELECT @hid = hierarchyid :: GetRoot () PRINT @ hid.ToString ()

Operatory zbioru

Istnieją głównie trzy zestawy operacji:UNIA,KRZYŻOWAĆ,MINUS. Możesz zapoznać się z poniższym obrazem, aby zrozumieć operacje na zestawach w języku SQL. Zobacz poniższy obraz:

Operator Znaczenie Składnia

UNIA

Operator UNION służy do łączenia zestawu wyników dwóch lub więcej instrukcji SELECT.

SELECT ColumnName (s) FROM Table1
UNIA
SELECT ColumnName (s) FROM Table2

KRZYŻOWAĆ

Klauzula INTERSECT służy do łączenia dwóchWYBIERZinstrukcje i zwracają część wspólną zestawów danych obu instrukcji SELECT.

SELECT Kolumna1, Kolumna2….
FROM TableName
GDZIE Stan
KRZYŻOWAĆ
SELECT Kolumna1, Kolumna2….
FROM TableName
GDZIE Stan

Z WYJĄTKIEM

Operator EXCEPT zwraca te krotki, które są zwracane przez pierwszą operację SELECT i nie są zwracane przez drugą operację SELECT.

SELECT ColumnName
FROM TableName
Z WYJĄTKIEM
SELECT ColumnName
FROM TableName

Operatory łańcuchowe

Operator Znaczenie Składnia / przykład

+ (Konkatenacja ciągów znaków)

Łączy dwa lub więcej ciągów binarnych lub znakowych, kolumn lub kombinacji ciągów i nazw kolumn w jedno wyrażenie

wyrażenie + wyrażenie

+ = (Konkatenacja ciągów znaków)

Służy do łączenia dwóch ciągów i ustawia ciąg na wynik operacji.

wyrażenie + = wyrażenie

% (Znaki wieloznaczne do dopasowania)

Służy do dopasowywania dowolnego łańcucha zawierającego zero lub więcej znaków.

Przykład: „sample%”

[] (Symbole wieloznaczne do dopasowania)

Służy do dopasowania pojedynczego znaku w określonym zakresie lub zestawie, który jest określony w nawiasach [].

Przykład: m [n-z]% ”

[^] (Symbole wieloznaczne do dopasowania)

Służy do dopasowywania pojedynczego znaku, który nie mieści się w zakresie lub jest poza zakresem określonym w nawiasach kwadratowych.

Przykład: „Al [^ a]%”

_ (Znaki wieloznaczne do dopasowania)

Służy do dopasowania pojedynczego znaku w operacji porównania ciągów

test_expression [NIE] W (podzapytanie | wyrażenie [,… n])

Agregat Funkcje

Inny funkcje agregujące obsługiwane przez SQL Server są następujące:

Funkcjonować Opis Składnia Przykład

SUMA()

Służy do zwracania sumy grupy wartości.

SELECT SUM (ColumnName) FROM TableName

SELECT SUM (Marks) FROM StudentsInfo

LICZYĆ()

Zwraca liczbę wierszy na podstawie warunku lub bez warunku.

SELECT COUNT (ColumnName) FROM TableName WHERE Warunek

SELECT COUNT (StudentID) FROM StudentsInfo

ŚR ()

Służy do obliczania średniej wartości kolumny liczbowej.

SELECT AVG (ColumnName) FROM TableName

WYBIERZ AVG (znaki) z StudentsInfo

MIN ()

Ta funkcja zwraca minimalną wartość kolumny.

SELECT MIN (ColumnName) FROM TableName

WYBIERZ MIN (punkty) od StudentsInfo

MAX ()

Zwraca maksymalną wartość kolumny.

SELECT MAX (ColumnName) FROM TableName

SELECT MAX (Marks) FROM StudentsInfo

PIERWSZY()

Służy do zwracania pierwszej wartości kolumny.

SELECT FIRST (ColumnName) FROM TableName

SELECT FIRST (Marks) from StudentsInfo

OSTATNI, UBIEGŁY, ZESZŁY()

Ta funkcja zwraca ostatnią wartość kolumny.

SELECT LAST (ColumnName) FROM TableName

SELECT LAST (Marks) FROM StudentsInfo

Funkcje zdefiniowane przez użytkownika

Microsoft SQL Server umożliwia użytkownikom tworzenie funkcji zdefiniowanych przez użytkownika, które są procedurami. Te procedury akceptują parametry, mogą wykonywać proste do złożonych działań i zwracać wynik tej konkretnej czynności jako wartość. W tym przypadku zwracana wartość może być pojedynczą wartością skalarną lub pełnym zestawem wyników.

Możesz użyć funkcji zdefiniowanych przez użytkownika, aby:

  • Zezwalaj na programowanie modułowe
  • Zmniejsz ruch sieciowy
  • Zezwalaj na szybsze wykonywanie zapytań

Istnieją również różne typy funkcji zdefiniowanych przez użytkownika, które można utworzyć. Oni są:

  • Funkcje skalarne: Przyzwyczajonyzwracają pojedynczą wartość danych typu zdefiniowanego w klauzuli RETURNS.
  • Funkcje wartościowane w tabeli: Przyzwyczajonypowrót astółtyp danych.
  • Funkcje systemu: SQL Server zapewnia różnorodne funkcje systemowe do wykonywania różnych operacji.

Cóż, oprócz funkcji zdefiniowanych przez użytkownika, w SQL Server jest kilka wbudowanych funkcji, które mogą być używane do wykonywania różnych zadań. Przechodząc dalej w tym artykule dotyczącym samouczka programu SQL Server, pozwól nam teraz zrozumieć, czym są zapytania zagnieżdżone.

Zagnieżdżone zapytania

Zapytania zagnieżdżone to te zapytania, które mają zapytanie zewnętrzne i podzapytanie wewnętrzne. Zasadniczo podzapytanie to zapytanie zagnieżdżone w innym zapytaniu, takim jak SELECT, INSERT, UPDATE lub DELETE. Zobacz obrazek poniżej:

Następnie w tym samouczku dotyczącym SQL Server, pozwól nam zrozumieć różne typy sprzężeń w SQL.

Łączy

są używane do łączenia krotek z dwóch lub więcej tabel na podstawie powiązanej kolumny między tabelami. Istnieją cztery typy złączeń:

  • WEWNĘTRZNE DOŁĄCZ: Zwraca rekordy, które mają zgodne wartości w obu tabelach.
  • LEWY DOŁĄCZ: Zwraca rekordy z lewej tabeli, a także te rekordy, które spełniają warunek z prawej tabeli.
  • PRAWO DOŁĄCZ: Zwraca rekordy z prawej tabeli, a także te rekordy, które spełniają warunek z lewej tabeli.
  • PEŁNE DOŁĄCZ: Zwraca rekordy, które mają dopasowanie w lewej lub prawej tabeli.

Rozważ poniższą tabelę wraz z tabelą StudentsInfo, aby zrozumieć składnię sprzężeń.

SubjectID Legitymacja studencka Nazwa przedmiotu
1010Matematyka
2jedenaścieFizyka
312Chemia

WEWNĘTRZNE DOŁĄCZENIE

Składnia

SELECT ColumnName (s) Z tabeli 1 INNER JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Przykład

SELECT Subjects.SubjectID, StudentsInfo.StudentName FROM Subjects INNER JOIN StudentsInfo ON Subjects.StudentID = StudentsInfo.StudentID

LEFT JOIN

Składnia

SELECT ColumnName (s) Z tabeli 1 LEFT JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Przykład

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo LEFT JOIN Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

PRAWO DOŁĄCZ

Składnia

SELECT ColumnName (s) Z tabeli 1 RIGHT JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Przykład

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo RIGHT JOIN Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

PEŁNE DOŁĄCZ

Składnia

SELECT ColumnName (s) Z tabeli 1 FULL OUTER JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Przykład

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo FULL OUTER JOIN Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

Następnie w tym artykule na temat samouczka SQL Server, pozwól nam zrozumieć różne typy pętli obsługiwane przez SQL Server.

Pętle

Różne polecenia sterowania przepływem są następujące:

Omówmy każdy z nich jeden po drugim.

BEGIN..END

Te słowa kluczowe są używane do umieszczania serii instrukcji SQL. Następnie można wykonać tę grupę instrukcji SQL.

Składnia

BEGIN StatementBlock END

PRZERWA

Ta instrukcja służy do opuszczania bieżącej pętli WHILE. W przypadku, gdy bieżąca pętla WHILE jest zagnieżdżona w innej pętli, wówczas instrukcja BREAK opuszcza tylko bieżącą pętlę, a sterowanie jest przekazywane do następnej instrukcji w bieżącej pętli. Instrukcja BREAK jest zwykle używana wewnątrz instrukcji IF.

Składnia

PRZERWA

KONTYNTYNUJ

Instrukcja CONTINUE służy do ponownego uruchomienia pętli WHILE. Zatem wszelkie instrukcje występujące po słowie kluczowym CONTINUE zostaną zignorowane.

Składnia

KONTYNTYNUJ

Tutaj etykieta jest punktem, po którym rozpoczyna się przetwarzanie, jeśli GOTO jest kierowane do tej konkretnej etykiety.

IŚĆ DO

Służy do zmiany przepływu wykonania do etykiety. Instrukcje zapisane po słowie kluczowym GOTO są pomijane, a przetwarzanie jest kontynuowane na etykiecie.

Składnia

Zdefiniuj etykietę: Label: Alter Wykonanie: GOTO Label

Tutaj etykieta jest punktem, po którym rozpoczyna się przetwarzanie, jeśli GOTO jest kierowane do tej konkretnej etykiety.

JEŚLI INACZEJ

Jak każdy inny język programowania, instrukcja If-else w SQL Server sprawdza warunek i jeśli warunek jest fałszywy, wykonywana jest instrukcja „else”.

Składnia

IF BooleanExpression StatementBlock [ELSE StatementBlock]

POWRÓT

Służy do bezwarunkowego zamykania zapytania lub procedury. Zatem instrukcje zapisane po klauzuli RETURN nie są wykonywane.

Składnia

RETURN [IntegerExpression]

Tutaj zwracana jest wartość całkowita.

POCZEKAJ NA

Przepływ sterujący WAITFOR służy do blokowania wykonywania procedury składowanej, transakcji lub partii do czasu, gdy określona instrukcja zmieni, zwróci co najmniej jeden wiersz lub upłynie określony czas lub przedział czasu.

Składnia

WAITFOR (GetConversionGroupStatement)] [, limit czasu TIMEOUT]

gdzie,

  • OPÓŹNIENIE - Okres, który musi minąć
  • TimeToPass - P.okres czasu oczekiwania
  • CZAS - Theczas uruchomienia procedury składowanej, transakcji lub partii.
  • TimeToExecute - Theczas, w którym kończy się instrukcja WAITFOR.
  • RecieveStatement - DOważne oświadczenie RECEIVE.
  • GetConversionGroupStatement - DOważna instrukcja GET CONVERSATION GROUP.
  • Limit czasu TIMEOUT - Określa okres czasu (w milisekundach) oczekiwania na pojawienie się komunikatu w kolejce.

PODCZAS

Ta pętla służy do ustawiania warunku ponownego wykonania określonej instrukcji SQL lub bloku instrukcji SQL. Instrukcje są wykonywane tak długo, jak warunek wymieniony przez użytkownika ma wartość TRUE. Gdy tylko warunek zawiedzie, pętla przestaje działać.

Składnia

WHILE BooleanExpression StatementBlock

Skoro już znacie polecenia DML, przejdźmy do następnej sekcjiw tym artykule na temat SQL Tutorial, czyli poleceń DCL.

Polecenia języka sterowania danymi (DCL)

Ta sekcja samouczka SQL Server daje wyobrażenie o poleceniach, za pomocą których są używane do wymuszania bezpieczeństwa bazy danych w środowiskach wielu użytkowników. Polecenia są następujące:

DOTACJA

Polecenie GRANT służy do zapewnienia dostępu lub uprawnień do bazy danych i jej obiektów użytkownikom.

Składnia

GRANT PrivilegeName ON ObjectName TO RoleName [Z opcją GRANT]

gdzie,

  • PrivilegeName - Czy przywilej / prawo / dostęp przyznane użytkownikowi.
  • ObjectName - Nazwa obiektu bazy danych, np. TABLE / VIEW / STORED PROC.
  • Nazwa Użytkownika - Nazwa użytkownika, któremu nadano dostęp / prawa / przywileje.
  • PUBLICZNY - Aby przyznać prawa dostępu wszystkim użytkownikom.
  • RoleName - nazwa zestawu uprawnień zgrupowanych razem.
  • Z opcją dotacji - Aby dać użytkownikowi dostęp do nadania innym użytkownikom uprawnień.

Przykład

- Aby przyznać uprawnienie SELECT do tabeli StudentsInfo użytkownikowi1 GRANT SELECT ON StudentsInfo TO user1

UNIEWAŻNIĆ

Polecenie REVOKE służy do odebrania użytkownikowi uprawnień dostępu nadanych za pomocą polecenia GRANT.

Składnia

ODWOŁAĆ PrivilegeName ON ObjectName FROM PUBLIC

Przykład

- Aby cofnąć przyznane uprawnienie od użytkownika 1 ODWOŁAJ WYBÓR ON StudentsInfo TO user1

Przechodząc dalej w tym samouczku dotyczącym SQL Server, pozwól nam zrozumieć, jak tworzyć i używać procedur składowanych.

Procedury składowane

Procedury składowane to jednostki wielokrotnego użytku, które hermetyzują określoną logikę biznesową aplikacji. Jest to więc grupa instrukcji SQL i logiki, kompilowanych i przechowywanych razem w celu wykonania określonego zadania.

Składnia

CREATE [OR REPLACE] PROCEDURE nazwa_procedury [(nazwa_parametru [IN | OUT | IN OUT] typ [])] IS BEGIN [sekcja_deklaracji] sekcja_wykonawcza // instrukcja SQL używana w procedurze składowanej END GO

Przykład

- Utwórz procedurę, która zwróci imię i nazwisko ucznia, gdy StudentId zostanie podany jako parametr wejściowy procedury składowanej Create PROCEDURE GetStudentName (@StudentId INT, --Input parameter, @StudName VARCHAR (50) OUT --Output parameter, AS BEGIN SELECT @StudName = StudentName FROM StudentsInfo WHERE StudentID = @ StudentId END

Kroki do wykonania:

      • Zadeklaruj @StudName jako nvarchar (50)
      • EXEC GetStudentName 01, wyjście @StudName
      • SELECT @StudName

Powyższa procedura zwraca nazwisko konkretnego ucznia,o przekazaniu uczniom identyfikatora jako wkładu. Następnie w tym samouczku dotyczącym SQL Server zapoznajmy się z poleceniami języka sterowania transakcjami.

Polecenia języka sterowania transakcjami (TCL)

Ta sekcja samouczka SQL Server daje wgląd w polecenia używane do zarządzania transakcjami w bazie danych.Polecenia są następujące:

POPEŁNIĆ

Polecenie COMMIT służy do zapisania transakcji w bazie danych.

Składnia

POPEŁNIĆ

ROLLBACK

Polecenie ROLLBACK służy do przywracania bazy danych do ostatniego zatwierdzonego stanu.

Składnia

ROLLBACK

UWAGA: Używając ROLLBACK z SAVEPOINT, możesz bezpośrednio przeskoczyć do punktu zapisu w trwającej transakcji. Składnia: ROLLBACK TO SavepointName

PUNKT ZAPISU

Komenda SAVEPOINT służy do tymczasowego składowania transakcji. Więc jeśli chcesz cofnąć się do dowolnego punktu, możesz zapisać ten punkt jako „SAVEPOINT”.

Składnia

SAVEPOINT SAVEPOINTNAME

Rozważ poniższą tabelę, aby zrozumieć działanie transakcji w bazie danych.

Legitymacja studencka StudentName
jedenRohit
2Suhana
3Ashish
4Prerna

Teraz użyj poniższego zrozumienie transakcji w bazie danych.

INSERT INTO StudentTable VALUES (5, 'Avinash') COMMIT UPDATE StudentTable SET name = 'Akash' WHERE id = '5' SAVEPOINT S1 INSERT INTO StudentTable VALUES (6, 'Sanjana') SAVEPOINT S2 INSERT INTO StudentTable VALUES (7, 'Sanjay ') SAVEPOINT S3 INSERT INTO StudentTable VALUES (8,' Veena ') SAVEPOINT S4 SELECT * FROM StudentTable

W dalszej części tego artykułu poświęconego samouczkowi SQL Server dowiemy się, jak obsługiwać wyjątki w języku Transact-SQL.

Obsługa wyjątków

Istnieją dwa typy wyjątków, tj. Wyjątki zdefiniowane przez system i wyjątki zdefiniowane przez użytkownika. Jak sama nazwa wskazuje, obsługa wyjątków to proces, za pomocą którego użytkownik może obsłużyć wygenerowane wyjątki. Aby obsłużyć wyjątki, musisz zrozumieć następujące instrukcje kontroli przepływu:

RZUCAĆ

Ta klauzula służy do zgłaszania wyjątku i przenoszenia wykonania do bloku CATCH konstrukcji TRY… CATCH.

Składnia

THROW [ErrorNumber, @localvariable, State] []

gdzie,

  • ErrorNumber - DOstała lub zmienna, która reprezentuje wyjątek.
  • Wiadomość - DOzmienna lub ciąg opisujący wyjątek.
  • Stan -Stała lub zmienna z zakresu od 0 do 255 wskazująca stan, który ma zostać skojarzony z komunikatem.
THROW 51000, 'Rekord nie istnieje.', 1

PRÓBUJ ZŁAPAĆ

Służy do implementacji obsługi wyjątków w języku Transact-SQL. Grupa instrukcji może być zawarta w bloku TRY. W przypadku wystąpienia błędu w bloku TRY kontrola jest przekazywana do innej grupy instrukcji, które są zawarte w bloku CATCH.

Składnia

Instrukcja BEGIN TRYBlock END TRY BEGIN CATCH [StatementBlock] END CATCH []
BEGIN TRY SELECT * FROM StudentsInfo END TRY BEGIN CATCH SELECT ERROR_NUMBER () AS ErNum, ERROR_MESSAGE () AS ErMsg END CATCH

W W ten sposób dochodzimy do końca tego artykułu o samouczku dotyczącym SQL Server. Mam nadzieję, że podobał Ci się ten artykuł na temat samouczka SQL Server dla początkujących.ja Jeśli chcesz uzyskać ustrukturyzowane szkolenie dotyczące MySQL, sprawdź nasze który obejmuje szkolenie na żywo prowadzone przez instruktora i rzeczywiste doświadczenie projektowe. To szkolenie pomoże Ci dogłębnie zrozumieć MySQL i osiągnąć mistrzostwo w tym temacie. Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy w „ Samouczek dotyczący programu SQL Server ”I skontaktuję się z Tobą.