SQL Server oktatóanyag - Minden, ami a Transact-SQL elsajátításához szükséges

Ez a cikk az SQL Server bemutatójáról átfogó útmutató az MS SQL Server különböző fogalmairól, szintaxisáról és parancsairól.

A mai piacon, ahol minden nap humánus mennyiségű adat keletkezik, nagyon fontos megérteni az adatok kezelésének módját. Az SQL Server egy integrált környezet, amelyet a Microsoft fejlesztett ki az adatok kezelésére.Az SQL Server oktatóanyagának ebben a cikkében megismerheti az adatbázisok felderítéséhez szükséges összes műveletet és parancsot.



A jobb megértése érdekében a blogot a következő kategóriákra osztottam:



Parancsok Leírás

Data Definition Language parancsok (DDL)

Ez a parancskészlet az adatbázis meghatározására szolgál.

Data Manipulation Language parancsok (DML)



A manipulációs parancsok az adatbázisban lévő adatok manipulálására szolgálnak.

Data Control Language parancsok (DCL)

Ez a parancskészlet az adatbázis-rendszerek engedélyeivel, jogaival és egyéb vezérléseivel foglalkozik.

Tranzakcióvezérlő nyelv parancsai (TCL)

Ezeket a parancsokat megszokták foglalkozik az adatbázis tranzakciójával.

A parancsokon kívül a cikk a következő témákkal foglalkozik:



MS SQL Server - SQL Server oktatóanyag - Edureka

  1. Mi az SQL Server?
  2. Telepítse az SQL Server szolgáltatást
  3. Csatlakozzon az SQL Serverhez SSMS használatával
  4. Access Database Engine
  5. SQL Server architektúra
  6. Megjegyzések SQL-ben
  7. SQL Server adattípusok
  8. Kulcsok az adatbázisban
  9. Korlátozások az adatbázisban
  10. Operátorok
  11. Összesített függvények
  12. Felhasználó által definiált funkciók
  13. Beágyazott lekérdezések
  14. Csatlakozik
  15. Hurkok
  16. Tárolt eljárások
  17. Kivételek kezelése

***JEGYZET*** Ebben az SQL Server oktatóanyagban az alábbi adatbázist fogom figyelembe venniegy példa, hogy megmutassuk, hogyan kell tanulni és írniparancsokat.

Diákigazolvány Tanuló név Szülő neve Telefonszám Cím Város Ország
egyutálomAkriti mehra99553399669. dandár útlezárásaHyderabadIndia
2ManasaShourya Sharma9234568762Mayo út 15KolkataIndia
3AnaySoumya Mishra9876914261Marathalli-ház, 101. szBengaluruIndia
4PreetiRohan Sinha9765432234Queens út 40DelhiIndia
5.ShanayaAbhinay agarwal9878969068Oberoi utca 21. számMumbaiIndia

Mielőtt elkezdenénk megérteni az SQL Serverben használt különféle parancsokat, értsük meg, mi az SQL Server, annak architektúrája és hogyan kell telepíteni.

Mi az SQL Server?

A Microsoft SQL Server relációs adatbázis kezelő rendszer . Támogatja a Strukturált lekérdezés nyelve és az SQL nyelv saját implementációjával érkezik, amely az Tranzakció-SQL (T-SQL) . Integrált környezettel rendelkezik az SQL adatbázisok kezelésére, amely a .

Az SQL Server legfontosabb összetevői a következők:

  • Adatbázis-motor: Ez az összetevő kezeli a tárolást, a gyors tranzakciófeldolgozást és az adatok biztonságát.
  • SQL szerver - Ez a szolgáltatás az MS SQL Server példányának elindításához, leállításához, szüneteltetéséhez és folytatásához használható.
  • SQL Server Agent - A Server Agent szolgáltatás a feladatütemező szerepét tölti be, és bármely esemény vagy a követelmény szerint aktiválja.
  • SQL Server böngésző - Ez a szolgáltatás a bejövő kérés összekapcsolására szolgál a kívánt SQL Server-példánnyal.
  • SQL Server teljes szövegű keresés - Arra szolgál, hogy a felhasználó teljes szövegű lekérdezéseket futtasson az SQL táblák karakteradataival szemben.
  • SQL Server VSS Writer - Lehetővé teszi az adatfájlok biztonsági mentését és visszaállítását, ha az SQL Server nem fut.
  • SQL Server Analysis Services (SSAS) - Ezt a szolgáltatást adatelemzés, adatbányászat és képességeit. Az SQL Server is integrálva van és R a fejlett adatelemzéshez.
  • SQL Server jelentéskészítési szolgáltatások (SSRS) - Ahogy a neve is mutatja, ezt a szolgáltatást olyan funkciók és döntéshozatali képességek biztosítására használják, amelyek integrálódnak a .
  • SQL Server Integration Services (SSIS) - Ezt a szolgáltatást használják az ETL műveletek végrehajtására különböző típusú adatokhoz, több adatforrásból.

Most, hogy tudod, mi az az MS SQL Server, lépjünk tovább ebben a cikkben az SQL Server oktatóanyagról, és ismerjük meg az SQL Server telepítésének és telepítésének módját.

Telepítse az SQL Server szolgáltatást

Az SQL Server telepítéséhez kövesse az alábbi lépéseket:

1. lépés: Nyissa meg a Microsoft SQL Server letöltése , ahol megtalálja az SQL Server telepítésének lehetőségét helyben vagy a felhőben.

2. lépés: Most görgessen lefelé, és két lehetőséget fog látni: Fejlesztői és vállalati kiadás . Itt fogom letölteni a Fejlesztői kiadás . A letöltéshez csak a gombra kell kattintania Letöltés most választási lehetőség. Lásd alább.

3. lépés: Az alkalmazás letöltését követően kattintson duplán a fájlra, és a következő ablak jelenik meg.

4. lépés: Most kiválaszthatja az SQL Server beállításának három lehetőségét. Itt csak azt választom Alapvető lehetőség . A telepítési típus opció kiválasztásakor a következő képernyőn a licencszerződés elfogadása lesz. Ehhez kattintson a gombra Elfogad a következő ablakban.

5. lépés: Ezután meg kell adnia az SQL Server telepítési helyét. Ezután kattintson a Telepítés gombra.

Ha rákattint a gombra Telepítés , látni fogja, hogy a szükséges csomagok letöltődnek. A telepítés befejezése után a következő képernyő jelenik meg:

Itt vagy haladhat előre, és kattintson a Csatlakozás most gombra, vagy testreszabhatja a telepítést. Jobb megértése érdekében tovább megyek és választok Testreszab.

6. lépés: Ha rákattint a gombra Testreszab a fenti ablakban a következő varázsló nyílik meg. a következő ablakban kattintson a gombra Következő.

7. lépés: Miután a szabályok automatikusan települnek, kattintson a gombra Következő . Lásd alább.

8. lépés: Ezután ki kell választania a telepítés típusát. Tehát, válassza a Végezze el a az SQL Server 2017 új telepítése opciót, majd kattintson a gombra Következő.

9. lépés: A megnyíló varázslóban válassza ki a kiadást: Fejlesztő. Ezután kattintson a gombra Következő . Lásd alább.

10. lépés: Most olvassa el és fogadja el a licencszerződéseket a check-in választógomb segítségével, majd kattintson a gombra Következő . Lásd alább.

11. lépés: Az alábbi varázslóban kiválaszthatja a telepíteni kívánt szolgáltatásokat. Ezenkívül kiválaszthatja a példány gyökérkönyvtárát, majd kattintson a gombra Következő . Itt választom a Adatbázis-motor szolgáltatások .

12. lépés: Ezután meg kell neveznie a példányt, és automatikusan létrejön a példányazonosító. Itt megnevezem az „edureka” példányt. Ezután kattintson a gombra Következő.

mongodb felhasználó létrehozása az adatbázis számára

13. lépés: A Kiszolgáló konfigurálása varázslóban kattintson a gombra Következő .

14. lépés: Most engedélyeznie kell a hitelesítési módokat. Itt látni fogja a Windows hitelesítési mód és Vegyes mód . A vegyes módot választom. Ezután említse meg a jelszót, majd hozzáadom a jelenlegi felhasználót Rendszergazda a Jelenlegi felhasználó hozzáadása választási lehetőség.

15. lépés: Ezután válassza ki a konfigurációs fájl elérési útját, majd kattintson a gombra Telepítés .

A telepítés befejezése után a következő képernyő jelenik meg:

Csatlakozzon az SQL Serverhez SSMS használatával

Az SQL Server telepítése után a következő lépés az SQL Server és az SQL Server Management Studio összekapcsolása. Ehhez kövesse az alábbi lépéseket:

1. lépés: Menjen vissza a következő ablakba, és kattintson a gombra telepítse az SSMS-t választási lehetőség.

2. lépés: Ha rákattint erre az opcióra, a rendszer átirányítja a következő oldalon , ahol választania kell SSMS letöltése.

3. lépés: Miután letöltötte a telepítést, kattintson duplán az alkalmazásra, és a következő varázsló nyílik meg.

4. lépés: Kattintson Telepítés opció , a fenti ablakban, és látni fogja, hogy a telepítés megkezdődik.

5. lépés: A telepítés befejezése után kap egy párbeszédpanelt az alábbiak szerint.

Az SSMS telepítése után a következő lépés az Adatbázis-motor .

Hozzáférés az adatbázis-motorhoz

Amikor kinyitja a SQL szerver menedzsment stúdió tól Start menü , az alábbi képen látható ablakhoz hasonlóan nyílik meg egy ablak.

Itt említse meg a kiszolgáló nevét, a hitelesítési módot és kattintson a gombra Csatlakozás.

Miután rákattint a gombra Csatlakozás , a következő képernyőt látja.

Nos, emberek, így telepíti és telepíti az SQL Server szolgáltatást. Most, haladva ebben az SQL Server oktatóanyagban, értsük meg az SQL Server architektúrájának különböző összetevőit.

SQL Server architektúra

Az SQL Server architektúrája a következő:

  • szerver & mínusz Itt telepítik az SQL szolgáltatásokat és az adatbázis található
  • Relációs motor & mínusz A lekérdezés elemzőt, optimalizálót és végrehajtót tartalmazza, és a végrehajtás a relációs motorban történik.
  • Parancs elemző & mínusz Ellenőrzi a lekérdezés szintaxisát, és konvertálja a lekérdezést gépi nyelvre.
  • Optimalizáló & mínusz Előkészíti a végrehajtási tervet kimenetként úgy, hogy statisztikákat, lekérdezéseket és Algebrator fát vesz inputként.
  • Lekérdezés végrehajtó & mínusz Ez az a hely, ahol a lekérdezéseket lépésről lépésre hajtják végre
  • Tároló motor & mínusz Ez felelős a tárolási rendszeren tárolt adatokért, az adatok manipulálásáért, a tranzakciók kezeléséért és zárolásáért.

Most, hogy tudod, hogyan kell beállítani és telepíteni az SQL Server-t és annak különféle összetevőit, kezdjük el az írást Szerver. De előtte hadd szóljak arról, hogyan írhatok kommenteket az SQL Server-be.

Megjegyzések az SQL Server szolgáltatásban

Kétféleképpen lehet észrevételt tenni SQL-ben, vagyis használhatja a s ingle-line megjegyzéseket vagy a m ulti-line megjegyzések .

Egysoros megjegyzések

Az egysoros megjegyzések a következőkkel kezdődnek két kötőjel (-). Ezért a fordító a (-) után említett szöveget egyetlen sor végéig figyelmen kívül hagyja.

Példa:

- Példa egysoros megjegyzésekre

Többsoros megjegyzések

A többsoros megjegyzések / * -vel kezdődnek és végződnek * / . Ezért a között említett szöveg / * és * / a fordító figyelmen kívül hagyja.

Példa:

/ * Példa többsoros megjegyzésekre * /

Az SQL Server oktatóanyagának ebben a cikkében kezdjük az első parancskészlettel, azaz az Adatmeghatározási nyelv parancsokkal.

Data Definition Language parancsok

A cikk ezen része ötletet ad a parancsokról, amelyek segítségével meghatározhatja az adatbázisát. A parancsok a következők:

TEREMT

Ez az utasítás tábla, adatbázis vagy nézet létrehozására szolgál.

A „CREATE DATABASE” nyilatkozat

Ez az utasítás adatbázis létrehozására szolgál.

Szintaxis

CREATE DATABASE DatabaseName

Példa

DATABÁZIS LÉTREHOZÁSA Diákok

Az ' TÁBLÁZAT LÉTREHOZÁSA ' Nyilatkozat

Ahogy a neve is sugallja, ezt az állítást használják táblázat létrehozására.

Szintaxis

CREATE TABLE TableName (1. oszlop adattípus, 2. oszlop adattípus, 3. oszlop adattípus, .... OszlopN adattípus)

Példa

Táblázat létrehozása StudentInfo (StudentID int, StudentName varchar (8000), ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000), City varchar (8000), Country varchar (8000))

CSEPP

Ez az utasítás egy meglévő tábla, adatbázis vagy nézet eldobására szolgál.

A „DROP DATABASE” nyilatkozat

Ez az utasítás egy meglévő adatbázis eldobására szolgál. Az adatbázisban található teljes információ elvész, amint végrehajtja az alábbi parancsot.

Szintaxis

DROP DATABASE DatabaseName

Példa

DROP DATABASE Diákok

A „DROP TABLE” nyilatkozat

Ez az utasítás egy meglévő táblázat eldobására szolgál. A táblázatban található teljes információ elvész, amint végrehajtja az alábbi parancsot.

Szintaxis

DROP TABLE TableName

Példa

DROP TABLE StudentInfo

KOR

Az ALTER paranccsal oszlopok vagy korlátozások hozzáadása, törlése vagy módosítása használható egy meglévő táblázatban.

Az ' ALTER TÁBLÁZAT ' Nyilatkozat

Ez az utasítás egy már létező táblázat oszlopainak hozzáadásához, törléséhez és módosításához használható.

Az „ALTER TABLE” nyilatkozat ADD / DROP oszlopával

Az ALTER TABLE utasítás az ADD / DROP Column paranccsal oszlop hozzáadásához és törléséhez használható.

Szintaxis

ALTER TABLE TableName ADD ColumnName Adattípus ALTER TABLE TableName DROP COLUMN ColumnName

Példa

--ADD oszlop vércsoport: ALTER TABLE StudentInfo ADD vércsoport varchar (8000) --DROP oszlop vércsoport: ALTER TABLE StudentInfo DROP COLUMN vércsoport

Az ’ALTER TABLE’ nyilatkozat ALTER OSZLOPAL

Az ALTER TABLE utasítás használható az ALTER oszloppal egy tábla meglévő oszlopának adattípusának megváltoztatásához.

Szintaxis

ALTER TABLE TableName ALTER COLUMN ColumnName Adattípus

Példa

--Adjon hozzá egy oszlopot DOB, és változtassa meg az adattípust dátumról dátumra. ALTER TABLE StudentInfo ADD DOB dátum ALTER TABLE StudentInfo ALTER COLUMN DOB dátumidő

TRUNCATE

Ezt az SQL parancsot a táblázatban található információk törlésére használják, de magát a táblázatot sem. Tehát, ha törölni szeretné a táblázatban található információkat, és nem magát a táblázatot, akkor a TRUNCATE parancsot kell használnia. Egyébként használja a DROP parancsot.

Szintaxis

TRUNCATE TABLE TableName

Példa

TRUNCATE TABLE StudentInfo

RENAME

Ez az utasítás egy vagy több tábla átnevezésére szolgál.

Szintaxis

sp_rename 'OldTableName', 'NewTableName'

Példa

sp_rename 'StudentInfo', 'Infostudents'

Az SQL Server oktatóanyagának ebben a cikkében folytatva ismertesse meg az SQL Server által támogatott különböző adattípusokat.

SQL Server adattípusok

Adattípus kategória Adattípus neve Leírás Tartomány / Szintaxis
Pontos számok numerikusNumerikus értékek tárolására, rögzített pontosságú és skálaszámokkal rendelkezik- 10 ^ 38 +1 - 10 ^ 38 - 1.
tinyintEgész értékek tárolására szolgál0-tól 255-ig
smallintEgész értékek tárolására szolgál-2 ^ 15 (-32,768) - 2 ^ 15-1 (32,767)
bigintEgész értékek tárolására szolgál-2 ^ 63 (-9,223,372,036,854,775,808) - 2 ^ 63-1 (9,223,372,036,854,775,807)
intEgész értékek tárolására szolgál-2 ^ 31 (-2,147,483,648) - 2 ^ 31-1 (2 147 483 647)
bitEgy egész adattípust tárol, amely 0, 1 vagy NULL értéket ad meg0, 1 vagy NULL
decimálisNumerikus értékek tárolására, rögzített pontosságú és skálaszámokkal rendelkezik- 10 ^ 38 +1 - 10 ^ 38 - 1.
aprópénzMonetáris tárolására szolgálvagy valutaértékek.- 214 748,3648 - 214 748 3664
pénzMonetáris tárolására szolgálvagy valutaértékek.-922,337,203,685,477,5808 - 922,337,203,685,477,5807 (-922,337,203,685,477,58
az Informatica számára 922 337 203 685 477,58-ig.
Hozzávetőleges számok úszóLebegőpontos numerikus adatok tárolására szolgál- 1,79E + 308 - -2,23E-308, 0 és 2,23E-308 - 1,79E + 308
igaziLebegőpontos numerikus adatok tárolására szolgál- 3,40E + 38 - -1,18E - 38, 0 és 1,18E - 38-3,40E + 38
Dátum és idő dátumDátum meghatározására szolgál az SQL Server szolgáltatásban.Szintaxis: dátum
smalldatetimeOlyan dátum meghatározására szolgál, amely kombinálva van egy olyan napszakkal, ahol az idő egy 24 órás napon alapul, másodpercek mindig nulla (: 00) és tört másodpercek nélkül.Szintaxis: smalldatetime
dátum időOlyan dátum meghatározására szolgál, amely kombinálva van a napszakkal és a tört órákkal a 24 órás óra alapján.Szintaxis: dátumidő
datetime2 datetime2 a meglévő kiterjesztése dátum idő típus, amelynek nagyobb az alapértelmezett töredékpontossága, larget dátumtartománya.Szintaxis: datetime2
datetimeoffsetOlyan dátum meghatározására szolgál, amely kombinálva van egy olyan napszakkal, amelynek tudatában van az időzóna. 24 órás órára épül.Szintaxis: datetimeoffset
időA napi idő meghatározására szolgál.Szintaxis: idő
Karakterláncok charFix méretű karakterek tárolására szolgál.char[( n )] ahol n értéke 1-8000 között változik
varcharVáltozó hosszúságú karakterek tárolására szolgál.varchar [( n | max)] ahol az n értéke 1-8000 között változik, és a maximálisan megengedett tárhely 2 GB.
szövegTárolására használt variable hosszúságú nem Unicode adatokA karakterlánc maximális hossza megengedett - 2 ^ 31-1 (2 147 483 647)
Unicode karakterláncok ncharFix méretű karakterek tárolására szolgál.nchar[(n)] ahol n értéke 1-4000 között változik
nvarcharVáltozó hosszúságú karakterek tárolására szolgál.varchar [( n | max)] ahol az n értéke 1-4000 között változik, és a maximálisan megengedett tárhely 2 GB.
ntextVáltozó hosszúságú Unicode adatok tárolására szolgálA karakterlánc maximális megengedett hossza - 2 ^ 30-1 (2 147 483 647)
Bináris húrok binárisBármelyik rögzített hosszúságú bináris adattípusok tárolására szolgálbináris[( n )] ahol n értéke 1-8000 között változik
változatosBármelyik rögzített hosszúságú bináris adattípusok tárolására szolgálváltozatos[( n )] ahol az n érték 1-8000 között változik, és a megengedett legnagyobb tárhely 2 ^ 31-1 bájt.
képVáltozó hosszúságú bináris adatok tárolására szolgál0 - 2 ^ 31-1 (2 147 483 647) bájt
Egyéb adattípusok Ez egy tárolt eljárás vagy változó OUTPUT paraméter adattípusa, amely hivatkozást tartalmaz egy kurzorra.-
sorváltásAutomatikusan generált, egyedi bináris számok exponálására szolgál az adatbázisban.-
hierarchyidA hierarchiában elfoglalt pozíció képviseletére szolgál.-
egyedi azonosító16 bájtos GUID.Szintaxis:egyedi azonosító
sql_variantKülönféle SQL Server által támogatott adattípusok értékeinek tárolására szolgálSzintaxis: sql_variant
xmlXML adattípus tárolására szolgál.

xml ([CONTENT | DOCUMENT] xml_schemacollection)

Térgeometria típusokAz adatok ábrázolására szolgál egy euklideszi (lapos) koordináta-rendszerben.-
Térföldrajzi típusokElipszoidális (kerek föld) adatok, például GPS szélességi és hosszúsági koordináták tárolására szolgál.-
asztalAz eredménykészlet későbbi feldolgozásra való tárolására szolgál-

Ezután ebben a cikkben ismerjük meg az adatbázis különböző típusait és kényszereit.

Különböző típusú kulcsok az adatbázisban

Az alábbiakban bemutatjuk az adatbázisban használt különféle kulcsokat:

  • Jelöltkulcs - A Candidate Key olyan attribútumkészlet, amely egyedileg azonosíthatja a táblázatot. Egy táblának több jelöltje lehet, és a kiválasztott jelöltkulcsok közül egy kulcsot választanak elsődleges kulcsnak.
  • Szuper kulcs - Az attribútumkészlet egyedileg azonosíthatja a duplát. Tehát a jelöltkulcsok, az egyedi kulcsok és az elsődleges kulcsok szuperkulcsok, de fordítva nem igaz.
  • Elsődleges kulcs - Elsődleges kulcsok minden egyes pár egyedi azonosítására szolgálnak.
  • Alternatív kulcs - Az alternatív kulcsok azok a jelölt kulcsok, amelyeket nem választottak elsődleges kulcsnak.
  • Egyedi kulcs- Az egyedi kulcsok hasonlóak az elsődleges kulcshoz, de egyetlen NULL értéket engedélyeznek az oszlopban.
  • Idegen kulcs - Az az attribútum, amely csak a jelen lévő értékeket veheti figyelembe valamilyen más attribútum értékeként, az idegen kulcs annak az attribútumnak, amelyre utal.
  • Kompozit kulcs- Az összetett kulcsok két vagy több oszlop kombinációi, amelyek egyedileg azonosítják az egyes duplákat.

Az adatbázisban használt korlátozások

A korlátozásokat egy adatbázisban használják a táblázatban tárolt adatokra vonatkozó szabályok meghatározására. A különböző típusú korlátozások az SQL-ben a következő:

NEM NULLA

A NOT NULL korlátozás biztosítja, hogy egy oszlopnak ne legyen NULL értéke.

Példa

Táblázat létrehozása StudentInfo (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)) - NEM NULL on ALTER TÁBLÁZAT ALTER TÁBLÁZAT StudentsInfo ALTER OSZLOP Telefonszám int NOT NULL

EGYEDI

Ez a megkötés biztosítja, hogy az oszlop összes értéke egyedi legyen.

Példa

- UNIQUE a táblázat létrehozásakor Táblázat létrehozása 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 több oszlopban 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) CONSTRAINT UC_Student_Info UNIQUE (StudentID, PhoneNumber) - UNIQUE on ALTER TABLE ALTER TABLE StudentsInfo UNIQUE (StudentID) hozzáadása - UNIQUE kényszer ALTER TABLE

JELÖLJE BE

A CHECK korlátozás biztosítja, hogy az oszlop összes értéke megfeleljen egy adott feltételnek.

Példa

- ELLENŐRZÉSI KORLÁTOZÁS A TÁBLÁZAT LÉTREHOZÁSA TÁBLÁZAT létrehozása 8000) CHECK (Ország = 'India')) - CHECK korlátozás több oszlopon Táblázat létrehozása StudentInfo (StudentID int NOT NULL, StudentName varchar8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Városi varchar (8000), Ország varchar (8000) ELLENŐRZÉS (Ország = 'India' ÉS Város = 'Hyderabad')) - ELLENŐRZÉSI KORLÁTOZÁS az ALTER TÁBLÁZAT ALTER TÁBLÁZATára StudentInfo ADD CHECK (Ország = 'India') - név a CHECK kényszer ALTER TÁBLÁZAThoz StudentInfo KORLÁTOZÁS hozzáadása CheckConstraintName CHECK (Ország = 'India') - CHECK kényszer ALTER TÁBLA elhagyása StudentsInfo DROP KORLÁTOZÁS CheckConstraintName

ALAPVETÉS

A DEFAULT megszorítás egy oszlop alapértelmezett értékeinek halmazából áll, ha nincs megadva érték.

Példa

--DEFAULT korlátozás a TÁBLÁZAT LÉTREHOZÁSA TÁBLÁZAT LÉTREHOZÁSÁBAN DEFAULT 'India') - DEFAULT kényszer az ALTER TÁBLÁZATON ALTER TABLE StudentInfo ADD CONSTRAINT defau_Country DEFAULT 'India' FOR Country - Az alapértelmezett kényszer ALTER TABLE elhagyása StudentsInfo ALTER COLUMN Ország DROP defau_Country

INDEX

Az INDEX kényszer indexek létrehozására szolgál a táblázatban, amelyeken keresztül nagyon gyorsan létrehozhat és lekérhet adatokat az adatbázisból.

Szintaxis

- Hozzon létre egy indexet, ahol megismételt értékek megengedettek. CREATE INDEX IndexName ON TableName (1. oszlop, 2. oszlop, ... O oszlopN) - Hozzon létre egy indexet, ahol a duplikált értékek nem engedélyezettek. CREATE UNIQUE INDEX IndexName ON TableName (1. oszlop, 2. oszlop, ... OszlopN)

Példa

INDEX létrehozása idex_StudentName ON StudentsInfo (StudentName) - Index törlése a táblából DROP INDEX StudentsInfo.idex_StudentName

Az SQL Server oktatóanyagának ebben a cikkében továbblépve ismerje meg most a Microsoft SQL Serverben használt különféle adatkezelési nyelv parancsokat.

Data Manipulation Language parancsok

A cikknek ez a szakasza lefedi mindazokat a parancsokat, amelyeken keresztül manipulálhatja az adatbázist. A parancsok a következők:

Ezen parancsok mellett léteznek más manipulatív operátorok / funkciók is, például:

HASZNÁLAT

Ez az utasítás arra szolgál, hogy kiválassza az adatbázist, hogy elkezdje rajta végrehajtani a különféle műveleteket.

Szintaxis

USE DatabaseName

Példa

HASZNÁLJA a diákokat

INSERT INTO

Az INSERT INTO nyilatkozat új rekordok beillesztésére szolgál egy meglévő táblába.

Szintaxis

INSERT INTO TableName (1. oszlop, 2. oszlop, 3. oszlop, ..., N oszlop) ÉRTÉKEK (érték1, érték2, érték3, ...) - Ha nem szeretné megemlíteni az oszlopneveket, használja az alábbi szintaxist: INSERT INTO TableName VALUES (Érték1, Érték2, Érték3, ...)

Példa

INSERT INTO StudentsInfo (StudentID, StudentName, ParentName, PhoneNumber, Student of Student, City, Country) ÉRTÉKEK ('06', 'Sanjana', 'Kapoor', '9977331199', 'Buffalo Street House No 10', 'Kolkata', 'India ') INSERT INTO StudentsInfo VALUES (' 07 ',' Vishal ',' Mishra ',' 9876509712 ',' Nice Road 15 ',' Pune ',' India ')

FRISSÍTÉS

Az UPDATE utasítással a táblázatban már szereplő rekordok módosíthatók vagy frissíthetők.

Szintaxis

UPDATE TableName SET Oszlop1 = Érték1, Oszlop2 = Érték2, ... WHERE feltétel

Példa

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

TÖRÖL

A DELETE utasítással törölhetők a táblában lévő meglévő rekordok.

Szintaxis

DELETE FROM TableName WHERE Feltétel

Példa

TÖRLÉS A StudentsInfo-ból WHERE StudentName = 'Aahana'

MEGY

A MERGE utasítás az INSERT, UPDATE és DELETE műveletek végrehajtására szolgál egy adott táblán, ahol a forrás táblázat található. Lásd alább.

Szintaxis

MERGE TagretTableName A SourceTableName MEGHASZNÁLÁSA A MergeCondition-on, AMIKOR AZT KAPCSOLATBAN KAPCSOLATBAN AZ Update_Statement MIKOR NEM MEGFELELT

Példa

A MERGE utasítás megértéséhez vegye figyelembe az alábbi táblázatokat Forrás és Cél táblázatként.

Forrás táblázat:

Diákigazolvány Tanuló név Jelek
egyutálom87
2Manasa92
4Anay74.

Cél táblázat:

Diákigazolvány Tanuló név Jelek
egyutálom87
2Manasa67
3Saurabh55
MERGE SampleTargetTable CÉL A SampleSourceTable SOURCE használatával ON (TARGET.StudentID = SOURCE.StudentID) MINT MEGFELELÉS ÉS CÉL. AMIKOR NEM VONATKOZIK A CÉL ÁLTAL, HOGYAN Tegye be (StudentID, StudentName, Marks) ÉRTÉKEIT (SOURCE.StudentID, SOURCE.StudentName, SOURCE.Marks), AMIKOR NEM TETT A FORRÁS MOST

Kimenet

Diákigazolvány Tanuló név Jelek
egyutálom87
2Manasa92
4Anay74.

SELECT

Az SELECT utasítás adatbázishoz, táblához vagy nézethez tartozó adatok kiválasztására szolgál. A visszaküldött adatokat egy eredménytábla tárolja, az úgynevezett eredménykészlet .

Szintaxis

SELECT Oszlop1, Oszlop2, ... OszlopN FROM TableName - (*) arra szolgál, hogy az összeset kiválassza a táblából. SELECT * FROM table_name - A visszatérni kívánt rekordok számának kiválasztásához: SELECT TOP 3 * FROM TableName

Példa

- Néhány oszlop kijelöléséhez SELECT StudentID, StudentName FROM StudentsInfo - (*) az összes kijelölésére szolgál a SELECT * FROM StudentsInfo táblából - A visszatérni kívánt rekordok számának kiválasztásához: SELECT TOP 3 * FROM StudentsInfo

A következő utasításokat használhatjuk a SELECT utasítással is:

KÜLÖNBÖZŐ

A DISTINCT kulcsszó a SELECT utasítással együtt csak más értékek visszaadására szolgál.

Szintaxis

SELECT DISTINCT oszlop1, oszlop2, ... oszlopN FROM TableName

Példa

Válassza ki a DISTINCT telefonszámot a StudentsInfo-ból

RENDEZÉS

Ez az utasítás arra szolgál, hogy a szükséges eredményeket növekvő vagy csökkenő sorrendben rendezze. Alapértelmezés szerint az eredményeket növekvő sorrendben tárolja. Mégis, ha csökkenő sorrendben szeretné elérni az eredményeket, akkor a DESC kulcsszó.

Szintaxis

SELECT Oszlop1, Oszlop2, ... OszlopN FROM TableName ORDER BY 1. oszlop, 2. oszlop, ... ASC | DESC

Példa

- Válassza ki az összes diákot a „StudentsInfo” táblából a ParentName szerint rendezve: SELECT * FROM StudentsInfo ORDER BY ParentName - Válassza ki az összes diákot a „StudentsInfo” táblából ParentName szerint rendezve csökkenő sorrendben: SELECT * FROM StudentsInfo ORDER BY ParentName DESC - Válassza ki az összes diákot a „StudentsInfo” táblából, szülőnév és diáknév szerint rendezve: SELECT * FROM StudentsInfo ORDER BY ParentName, StudentName / * Jelölje ki az összes diákot a „StudentsInfo” táblából, rendezve: ParentName csökkenő sorrendben és StudentName növekvő sorrendben: * / SELECT * FROM StudentsInfo RENDELÉS: ParentName ASC, StudentName DESC

CSOPORTOSÍT

Ezt az állítást a összesített függvények az eredményhalmazt egy vagy több oszlop szerint csoportosítani.

Szintaxis

SELECT oszlop1, oszlop2, ..., oszlopN FROM TableName WHERE feltétel CSOPORT oszlopNév (ek) ORDER BY oszlopnév (ek)

Példa

- Az egyes városok diákjainak felsorolása. SELECT COUNT (StudentID), város FROM StudentsInfo GROUP BY City

SZETTEK CSOPORTOSÍTÁSA

A CSOPORTOSÍTÁSI SZETTEK az SQL Server 2008-ban kerültek bevezetésre, amelyek segítségével a UNIÓ MINDEN a több egyszerű GROUP BY záradék.

Szintaxis

Válasszon oszlopneveket a TableName csoportból a csoportok csoportosítása szerint (oszlopnév (ek))

Példa

Válassza ki a StudentID, StudentName, COUNT (város) elemeket a StudentsInfo csoportból a SZETT csoportok csoportosításával ((StudentID, StudentName, City), (StudentID), (StudentName), (City))

HOGY

Ezt a záradékot abban a forgatókönyvben használják, ahol a WHERE kulcsszó nem használható.

Szintaxis

KIVÁLASZTÁS Oszlopnév (ek) ból a TableName-ből WHERE FELTÉTEL CSOPORT OszlopNév (ek) FELTÉTEL RENDELÉSE OszlopNév (ek)

Példa

SELECT COUNT (StudentID), Város FROM StudentsInfo CSOPORT Város szerint COUNT (StudentID)> 2 RENDELÉS COUNT (StudentID) DESC

BA

Az INTO kulcsszó a SELECT utasítás hogy adatokat másoljon az egyik táblázatból a másikba. Nos, megértheti ezeket a táblázatokat ideiglenes tábláknak. Az ideiglenes táblákat általában arra használják, hogy manipulációkat hajtsanak végre a táblázatban található adatokkal, az eredeti táblázat megzavarása nélkül.

Szintaxis

Válassza ki a * INTO NewTable [IN ExternalDB] elemet az OldTable WHERE feltételből

Példa

- A 'StudentsInfo' tábla biztonsági másolatának létrehozása SELECT * INTO StudentsBackup FROM StudentsInfo - Csak néhány oszlop kijelölése a StudentsInfo SELECT StudentName, Telefonszám IN StudentsDetails-ből SELECTInfo SELECT * IN PuneStudents FROM StudentsInfo WHERE City = 'Pune'

KOCKA

A CUBE a GROUP BY záradék . Lehetővé teszi részösszegek előállítását a GROUP BY záradékban megadott csoportosítási oszlopok összes kombinációjára.

Szintaxis

KIVÁLASZTÁS Oszlopnév (ek) A Táblázatnév csoportból a kocka szerint (oszlopnév1, oszlopnév2, ....., oszlopnévN)

Példa

KIVÁLASZT StudentID, COUNT (város) A StudentsInfo CSOPORTBAN KOCKA (StudentID) MEGRENDELÉS StudentID alapján

FELTEKER

A ROLLUP a GROUP BY záradék kiterjesztése. Ez lehetővé teszi a részösszegeket képviselő további sorok felvételét. Ezeket szuper-összesített soroknak nevezzük a végösszeggel együtt.

Szintaxis

KIVÁLASZTÁS Oszlopnév (ek) A Táblázatnév csoportból az oszlopnév szerint (oszlopnév1, oszlopnév2, ....., oszlopnévN)

Példa

SELECT StudentID, COUNT (város) A StudentsInfo CSOPORTBÓL ROLLUP (StudentID) alapján

OFFSET

Az OFFSET záradékot a SELECT és a RENDELÉS nyilatkozat szerint rekordok tartományának lekérésére. Az ORDER BY záradékkal együtt kell használni, mivel önmagában nem használható. Ezenkívül az Ön által említett tartománynak 0-nak vagy nagyobbnak kell lennie. Ha negatív értéket említ, akkor ez hibát mutat.

Szintaxis

SELECT Oszlopnevek) FROM TableName WHERE Feltétel SORRENDELÉS OSZlop oszlopNév (ek) OFFSET RowsToSkIP ROWS

Példa

Vegyünk egy új oszlopot Jelek ban,-ben StudentsInfo asztal.

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

FETCH

A FETCH záradék számos sor halmazának visszaadására szolgál. Az OFFSET záradékkal együtt kell használni.

Szintaxis

SELECT oszlopnevek) FROM TableName WHERE feltétel SORRENDELÉS oszlopnév (ek) szerint OFFSET RowsToSkip FETCH NEXT NumberOfRows CSAK SOROK

Példa

SELECT StudentName, ParentName FROM StudentsInfo MEGRENDELÉS MEGJEGYZÉSEK KÖZÖTT 1. SOROK CSAK KÖVETKEZŐ 1. SOROK

TOP

A TOP záradékot a SELECT utasítással együtt használják a visszatérendő rekordok számának megemlítésére.

Szintaxis

KIVÁLASZTJA a Felső szám oszlopnév (ek) t a (z) TableName WHERE feltételből

Példa

KIVÁLASZTOTT A TOP 3 * A StudentInfo-tól

PIVOT

A PIVOT a sorok oszlopértékekre forgatására szolgál, és ha szükséges, a többi oszlopértékre összesítéseket futtat.

Szintaxis

SELECT nem csuklós oszlopnév, [első elfordított oszlopnév] AS oszlopnév, [második elforgatott oszlopnév] AS oszlopnév, [harmadik elforgatott oszlopnév] AS oszlopnév, ... [utolsó elforgatott oszlopnév] AS oszlopnév FROM (SELECT lekérdezés, amely az adatokat előállítja) AS [alias a kezdeti lekérdezéshez] PIVOT ([AggregationFunction] (ColumName) FOR [OszlopNév annak az oszlopnak, amelynek értékei oszlopfejlécekké válnak] IN ([Első elfordított oszlopnév], [Második elfordított oszlopnév], [Harmadik elforgatott oszlopnév] ... elfordított oszlop])) AS [álneve a kimutató táblának]

Példa

Ha részletes példát szeretne kapni, hivatkozhat rá cikkem az SQL PIVOT-ról és az UNPIVOT-ról . Ezután az SQL Server oktatóanyagában nézzük meg a Microsoft SQL Server által támogatott különböző operátorokat.

Operátorok

Az különböző típusú operátorok Az SQL Server által támogatott szolgáltatások a következők:

Beszéljük meg mindegyiket egyenként.

Számtani operátorok

Operátor Jelentése Szintaxis

+

Kiegészítés

kifejezés + kifejezés

-

Kivonás

kifejezés - kifejezés

*

Szorzás

kifejezés * kifejezés

/

Divison

kifejezés / kifejezés

%

Modellus

kifejezés% kifejezés

Feladatkezelők

Operátor Jelentése Szintaxis

=

Rendeljen értéket egy változóhoz

változó = ‘érték’

Bitenkénti operátorok

Operátor Jelentése Szintaxis

& (Bitenként ÉS)

Két egész szám közötti bitenkénti logikai ÉS művelet végrehajtására szolgál.

kifejezés és kifejezés

& = (Bitenkénti ÉS hozzárendelés)

Két egész szám közötti bitenkénti logikai ÉS művelet végrehajtására szolgál. Értéket állít be a művelet kimenetére is.

kifejezés & = kifejezés

| (Bitenként VAGY)

Két egész szám közötti bitenkénti logikai VAGY művelet végrehajtására szolgál, bináris kifejezésekké lefordítva a Transact-SQL utasításokban.

kifejezés | kifejezés

| = (Bitenként VAGY hozzárendelés)

Két egész szám közötti bitenkénti logikai VAGY művelet végrehajtására szolgál, bináris kifejezésekké lefordítva a Transact-SQL utasításokban. Értéket állít be a művelet kimenetére is.

kifejezés | = kifejezés

^ (Bitenként exkluzív VAGY)

Két egész érték közötti bitenkénti kizáró VAGY művelet végrehajtására szolgál.

kifejezés ^ kifejezés

^ = (Bitenkénti kizárólagos VAGY hozzárendelés)

Két egész érték közötti bitenkénti kizáró VAGY művelet végrehajtására szolgál. Értéket állít be a művelet kimenetére is.

kifejezés ^ = kifejezés

~ (Bitenként NEM)

Egész számérték bitenkénti logikai NEM műveletének végrehajtására szolgál.

~ kifejezés

Összehasonlító operátorok

Operátor Jelentése Szintaxis

=

Egyenlő

kifejezés = kifejezés

>

Nagyobb, mint

kifejezés> kifejezés

<

Kevesebb, mint

kifejezés

> =

Nagyobb vagy egyenlő

kifejezés> = kifejezés

<=

Kevesebb vagy egyenlő

kifejezés<= expression

Nem egyenlő

kifejezés kifejezés

! =

Nem egyenlő

kifejezés! = kifejezés

!<

python mi __init__

Nem kevesebb mint

kifejezés !

!>

Nem nagyobb, mint

kifejezés!> kifejezés

Összetett operátorok

Operátor Jelentése Szintaxis

+ =

Az eredeti érték hozzáadásához és az eredmény eredeti értékének beállításához használható.

kifejezés + = kifejezés

- =

Egy érték levonására szolgál az eredeti értékből, és az eredeti értéket állítja be az eredményre.

kifejezés - = kifejezés

* =

Az érték szorzására szolgál az eredeti értékre, és az eredeti értéket az eredményre állítja.

kifejezés * = kifejezés

/ =

Egy érték elosztására szolgál az eredeti értékről és az eredeti értéket az eredményre állítja.

kifejezés / = kifejezés

% =

Egy érték elosztására szolgál az eredeti értékről és az eredeti értéket az eredményre állítja.

kifejezés% = kifejezés

& =

Bit és művelet végrehajtására szolgál, és az eredeti értéket az eredményre állítja.

kifejezés & = kifejezés

^ =

Bitenként kizáró VAGY művelet végrehajtására és az eredeti érték eredményre állítására szolgál.

kifejezés ^ = kifejezés

| =

Bitenként VAGY művelet végrehajtására és az eredeti érték eredményre állítására szolgál.

kifejezés | = kifejezés

Logikai operátorok

Operátor Jelentése Szintaxis

MINDEN

IGAZ értéket ad vissza, ha az összes összehasonlítás halmaza IGAZ.

scalar_expression! = ALL (allekérdezés)

ÉS

IGAZ értéket ad vissza, ha mindkét kifejezés IGAZ.

logikai_kifejezés ÉS logikai_kifejezés

BÁRMI

IGAZ értéket ad vissza, ha az összehasonlítások bármelyikének értéke IGAZ.

skalár_kifejezés! = {ANY} (allekérdezés)

KÖZÖTT

IGAZ értéket ad vissza, ha egy operandus egy tartományon belül van.

mintakifejezés [NEM] a beginxpresszió és az endexpresszió között

LÉTEZIK

Az IGAZ értéket adja eredményül, ha egy részlekérdezés tartalmaz sorokat.

LÉTEZIK (allekérdezés)

BAN BEN

IGAZ értéket ad vissza, ha az operandus megegyezik a kifejezések listájának egyikével.

teszt_kifejezés [NOT] IN (allekérdezés | kifejezés [,… n])

TETSZIK

IGAZ értéket ad vissza, ha az operandus megegyezik egy mintával.

microsoft sql oktató kezdőknek

match_expression [NOT] LIKE minta [ESCAPE escape_character]

NEM

Megfordítja bármely logikai operátor értékét.

[NOT] logikai_kifejezés

VAGY

IGAZ értéket ad vissza, ha a logikai kifejezések bármelyike ​​IGAZ.

logikai_kifejezés VAGY logikai_kifejezés

NÉHÁNY

IGAZ értéket ad vissza, ha az összehasonlítások egy része igaz.

skalár_kifejezés<= { SOME} ( subquery )

Hatályfeloldási operátorok

Operátor Jelentése Példa

::

Hozzáférést biztosít egy összetett adattípus statikus tagjaihoz. Az összetett adattípusok azok az adattípusok, amelyek többféle módszert és egyszerű adattípust tartalmaznak. Összetett adattípusok Ide tartoznak a beépített CLR típusok és az egyedi SQLCLR felhasználó által definiált típusok (UDT).

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

Állítsa be az Operátorokat

Főleg három beállított művelet van:UNIÓ,INTERSECT,MÍNUSZ. Az SQL képen beállított műveletek megértéséhez hivatkozhat az alábbi képre. Lásd az alábbi képet:

Operátor Jelentése Szintaxis

UNIÓ

Az UNION operátor két vagy több SELECT utasítás eredményhalmazának kombinálására szolgál.

Válassza ki az oszlopneveket a táblázatból
UNIÓ
Válasszon oszlopnevet a 2. táblázatból

INTERSECT

Az INTERSECT záradék kettő kombinálására szolgálSELECTutasításokat, és adja vissza a SELECT utasítások adatsorainak metszéspontját.

SELECT 1. oszlop, 2. oszlop….
FROM TableName
WHERE Állapot
INTERSECT
SELECT 1. oszlop, 2. oszlop….
FROM TableName
WHERE Állapot

KIVÉVE

Az EXCEPT operátor visszaadja azokat a sorrendeket, amelyeket az első SELECT művelet adott vissza, és amelyeket a második SELECT művelet nem adott vissza.

SELECT oszlopnév
FROM TableName
KIVÉVE
SELECT oszlopnév
FROM TableName

Vonós operátorok

Operátor Jelentése Szintaxis / példa

+ (Húrok összefűzése)

Két vagy több bináris vagy karakterláncot, oszlopot, vagy karakterláncok és oszlopnevek kombinációját összefűzi egyetlen kifejezésbe

kifejezés + kifejezés

+ = (Karakterlánc összefűzése)

Két karakterlánc összefűzésére szolgál, és a karakterláncot a művelet eredményéhez állítja.

kifejezés + = kifejezés

% (Helyettesítõ karakteres karakterek)

Bármely nulla vagy annál több karakterből álló karakterlánc illesztésére szolgál.

Példa: „minta%”

[] (Helyettesítő karakterek)

Egyetlen karakter illesztésére szolgál a megadott tartományon belül vagy a zárójelek között megadott halmazon belül [].

Példa: m [n-z]% ’

[^] (Helyettesítő karakterek)

Egyetlen karakter illesztésére szolgál, amely nem a szögletes zárójelek között megadott tartományon vagy halmazon belül található.

Példa: „Al [^ a]%”

_ (Helyettesítő karakterek)

Egy karakter összehasonlításához használatos egy karakterlánc-összehasonlító műveletben

teszt_kifejezés [NOT] IN (allekérdezés | kifejezés [,… n])

Összesítve Funkciók

A más összesített függvények Az SQL Server által támogatott szolgáltatások a következők:

Funkció Leírás Szintaxis Példa

ÖSSZEG()

Egy értékcsoport összegének visszaadására szolgál.

SELECT SUM (ColumnName) FROM TableName

KIVÁLASZTÁS SUM (jelölések) A StudentsInfo-ból

SZÁMOL()

Visszaadja a sorok számát vagy feltétel alapján, vagy feltétel nélkül.

SELECT COUNT (ColumnName) FROM TableName WHERE feltétel

A COUNTIn (StudentID) kiválasztása a StudentsInfo-ból

AVG ()

Egy numerikus oszlop átlagos értékének kiszámítására szolgál.

Válassza ki az AVG (OszlopNév) Táblázatnév lehetőséget

AVG (Jelölés) kiválasztása a StudentsInfo-ból

MIN ()

Ez a függvény adja vissza az oszlop minimális értékét.

MIND (oszlopnév) kiválasztása a táblázatnévből

MIN (MINK) kiválasztása a StudentsInfo-ból

MAX ()

Egy oszlop maximális értékét adja eredményül.

KIVÁLASZTJA A MAX (OszlopNév) Táblázatnév elemet

KIVÁLASZTJA a MAX (jelöléseket) a StudentsInfo-ból

ELSŐ()

Az oszlop első értékének visszaadására szolgál.

SELECT FIRST (ColumnName) A TableName-ból

KIVÁLASZTÁS ELSŐ (jelölések) A StudentsInfo-ból

UTOLSÓ()

Ez a függvény az oszlop utolsó értékét adja vissza.

SELECT LAST (ColumnName) A TableName-ból

VÁLASSZ UTOLSÓ (jelöléseket) A StudentsInfo-ból

Felhasználó által definiált funkciók

A Microsoft SQL Server lehetővé teszi a felhasználók számára, hogy rutinszerű felhasználói funkciókat hozzanak létre. Ezek a rutinok elfogadják a paramétereket, egyszerű és összetett műveleteket hajthatnak végre, és az adott művelet eredményét értékként adhatják vissza. Itt a visszaadott érték lehet akár egyetlen skalárérték, akár teljes eredményhalmaz.

A felhasználó által definiált függvényeket használhatja:

  • Moduláris programozás engedélyezése
  • Csökkentse a hálózati forgalmat
  • Lehetővé teszi a lekérdezések gyorsabb végrehajtását

Különböző típusú felhasználó által definiált funkciók hozhatók létre. Ők:

  • Skaláris funkciók: Szokottadja vissza a RETURNS záradékban meghatározott típusú egyetlen adatértéket.
  • Táblázatértékű funkciók: Szokottvissza aasztaladattípus.
  • Rendszerfunkciók: Az SQL Server különféle rendszerfunkciókat biztosít a különböző műveletek végrehajtásához.

Nos, a felhasználó által definiált függvényeken kívül van egy csomó beépített funkció az SQL Serverben, amelyek felhasználhatók különféle feladatok végrehajtására. Az SQL Server oktatóanyagának ebben a cikkében továbblépve most már értsük meg, melyek a beágyazott lekérdezések.

Beágyazott lekérdezések

Beágyazott lekérdezések azok a lekérdezések, amelyek külső lekérdezéssel és belső allekérdezéssel rendelkeznek. Tehát alapvetően az al lekérdezés egy olyan lekérdezés, amely egy másik lekérdezésbe van ágyazva, például a SELECT, INSERT, UPDATE vagy DELETE. Lásd az alábbi képet:

Ezután az SQL Server oktatóanyagában ismerjük meg az SQL különböző típusú összekapcsolásait.

Csatlakozik

két vagy több táblázatból álló sorrendek kombinálására szolgálnak, a táblák közötti kapcsolódó oszlop alapján. Négyféle csatlakozás létezik:

  • BELSŐ ÖSSZEKAPCSOLÁS: Visszaadja azokat a rekordokat, amelyeknek mindkét táblázatban vannak egyező értékek.
  • BAL CSATLAKOZÁS: Visszaadja a rekordokat a bal oldali táblázatból, és azokat a rekordokat is, amelyek megfelelnek a feltételeknek a jobb oldali táblázatból.
  • JOBB CSATLAKOZÁS: Visszaadja a rekordokat a jobb oldali táblából, és azokat a rekordokat is, amelyek megfelelnek a bal oldali táblázat feltételének.
  • TELJES CSATLAKOZÁS: Visszaadja azokat a rekordokat, amelyeknek egyezése van a bal vagy a jobb táblázatban.

Vegye figyelembe az alábbi táblázatot a StudentsInfo táblázattal együtt, hogy megértse a csatlakozások szintaxisát.

SubjectID Diákigazolvány SubjectName
10.10.Matematika
2tizenegyFizika
312.Kémia

BELSŐ ÖSSZEKAPCSOLÁS

Szintaxis

SELECT oszlopnév (ek) 1. táblázatból INNER JOIN 2. táblázat BE 1. táblázat. OszlopNév = 2. táblázat. OszlopNév

Példa

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

BAL CSATLAKOZÁS

Szintaxis

SELECT oszlopnév (ek) 1. táblázatból LEFT JOIN 2. táblázat ON Table1.ColumnName = Table2.ColumnName

Példa

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo LEFT JOIN alanyok ON StudentsInfo.SubjectID = Subjects.SubjectID RENDELÉSE StudentsInfo.StudentName

JOBB CSATLAKOZÁS

Szintaxis

SELECT oszlopnév (ek) 1. táblázatból JOBB CSATLAKOZÁS 2. táblázat a 1. táblázaton. OszlopNév = 2. Táblázat. OszlopNév

Példa

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo RIGHT JOIN Tárgyak ON StudentsInfo.SubjectID = Subjects.SubjectID RENDELÉSE StudentsInfo.StudentName

TELJES CSATLAKOZÁS

Szintaxis

SELECT oszlopnév (ek) 1. táblázatból TELJES KÜLSŐ CSATLAKOZÁS 2. tábla BE 1. táblázat. OszlopNév = 2. Táblázat. OszlopNév

Példa

Válassza ki a StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo TELJES KÜLSŐ CSATLAKOZÁS alanyokat ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

Ezután ebben a cikkben az SQL Server bemutatójáról ismertesse meg az SQL Server által támogatott különböző típusú hurkokat.

Hurkok

Az áramlás-vezérlés különböző parancsai a következők:

Beszéljük meg mindegyiket egyenként.

BEGIN..END

Ezeket a kulcsszavakat SQL utasítások sorozatának csatolására használják. Ezután az SQL utasítások ezen csoportja futtatható.

Szintaxis

BEGIN StatementBlock END

SZÜNET

Ezzel az utasítással kiléphetünk az aktuális WHILE ciklusból. Abban az esetben, ha az aktuális WHILE hurok be van ágyazva egy másik ciklusba, akkor a BREAK utasítás csak az aktuális ciklust lépi ki, és a vezérlő átkerül az aktuális hurok következő utasítására. A BREAK utasítást általában egy IF utasításban használják.

Szintaxis

SZÜNET

FOLYTATNI

A CONTINUE utasítást a WHILE hurok újraindítására használják. Tehát a CONTINUE kulcsszó utáni utasításokat a rendszer figyelmen kívül hagyja.

Szintaxis

FOLYTATNI

Itt a Címke az a pont, amely után megkezdődik a feldolgozás, ha egy GOTO-t az adott címkére céloznak.

MENJ

A végrehajtás folyamatának címkére történő megváltoztatására szolgál. A GOTO kulcsszó után írt utasítások kihagyásra kerülnek, és a feldolgozás a címkénél folytatódik.

Szintaxis

Define Label: Label: Alter Execution: GOTO Label

Itt a Címke az a pont, amely után megkezdődik a feldolgozás, ha egy GOTO-t az adott címkére céloznak.

HA MÁS

Mint minden más programozási nyelv, az SQL Server If-else utasítás teszteli a feltételt, és ha a feltétel hamis, akkor az ‘else’ utasítás kerül végrehajtásra.

Szintaxis

IF BooleanExpression StatementBlock [ELSE StatementBlock]

VISSZATÉRÉS

Használható feltétel nélküli kilépéshez egy lekérdezésből vagy eljárásból. Tehát a RETURN záradék után írt utasítások nem kerülnek végrehajtásra.

Szintaxis

RETURN [IntegerExpression]

Itt egy egész értéket adunk vissza.

VÁRNI RÁ

A WAITFOR vezérlőfolyamat blokkolja egy tárolt eljárás, tranzakció vagy köteg végrehajtását mindaddig, amíg egy adott utasítás módosítja, visszaadja legalább egy sort, vagy el nem telik egy meghatározott idő vagy időintervallum.

Szintaxis

WAITFOR (GetConversionGroupStatement)] [, TIMEOUT időtúllépés]

hol,

  • KÉSLELTETÉS - Az az időtartam, amelynek el kell telnie
  • TimeToPass - Pa várakozás időtartama
  • IDŐ - Aza tárolt eljárás, tranzakció vagy a köteg futásának ideje.
  • TimeToExecute - Azamikor a WAITFOR utasítás befejeződik.
  • RecieveStatement - NAK NEKérvényes RECEIVE nyilatkozat.
  • GetConversionGroupStatement - NAK NEKérvényes GET CONVERSATION GROUP utasítás.
  • TIMEOUT időtúllépés - Meghatározza azt az időtartamot milliszekundumban, ameddig várni kell, amíg egy üzenet megérkezik a sorba.

MÍG

Ez a hurok egy adott SQL utasítás vagy egy SQL utasítás blokk ismételt végrehajtásának feltételének beállítására szolgál. Az utasításokat addig hajtjuk végre, amíg a felhasználó által említett feltétel IGAZ. Amint a feltétel meghiúsul, a hurok leállítja a végrehajtást.

Szintaxis

Míg BooleanExpression StatementBlock

Most, hogy ismeritek a DML parancsokat, térjünk át a következő szakaszunkraebben a cikkben az SQL bemutatóról, azaz a DCL parancsokról.

Data Control Language Commands (DCL)

Az SQL Server oktatóanyagának ez a szakasza ötletet ad arról a parancsról, amelyen keresztül az adatbázis-biztonság kikényszerítése több felhasználói adatbázis-környezetben történik. A parancsok a következők:

GRANT

A GRANT parancs arra szolgál, hogy hozzáférést vagy privilégiumokat biztosítson az adatbázishoz és annak objektumaihoz a felhasználók számára.

Szintaxis

GRANT PrivilegeName ON ObjectName - RoleName [GRANT OPCIÓVAL]

hol,

  • PrivilegeName - Meg van-e adva a felhasználónak a kiváltság / jog / hozzáférés.
  • ObjectName - Olyan adatbázis-objektum neve, mint TABLE / VIEW / STORED PROC.
  • Felhasználónév - Annak a felhasználónak a neve, akinek megadják a hozzáférést / jogokat / jogosultságokat.
  • NYILVÁNOS - Hozzáférési jogok biztosítása minden felhasználó számára.
  • RoleName - Egy csoportba sorolt ​​kiváltságok neve.
  • TÁMOGATÁSI OPCIÓVAL - Hozzáférés biztosítása a felhasználó számára, hogy más felhasználóknak jogokat biztosítson.

Példa

- SELECT engedély megadása a StudentsInfo táblának a user1 számára. GRANT SELECT ON ON StudentsInfo TO user1

VISSZAVONÁS

A REVOKE paranccsal visszavonhatók a felhasználó GRANT paranccsal megadott hozzáférési jogosultságai.

Szintaxis

A PrivilegeName visszavonása az ObjectName címen a nyilvánosságtól

Példa

- Az 1. felhasználó engedélyének visszavonása. KIVÁLASZTÁS A SELECT ON StudentsInfo TO felhasználóról1

Ebben az SQL Server oktatóanyagban továbblépve ismerje meg a Tárolt eljárások létrehozásának és használatának módját.

Tárolt eljárások

Tárolt eljárások újrafelhasználható egységek, amelyek az alkalmazás meghatározott üzleti logikáját foglalják magukba. Tehát ez egy SQL utasítások és logikák egy csoportja, amelyet egy adott feladat végrehajtása érdekében állítanak össze és tárolnak együtt.

Szintaxis

CREATE [VAGY CSERÉLJE] eljárás_neve [(paraméter_név [IN | OUT | IN OUT] típus [])] IS BEGIN [deklaráció_szakasz] végrehajtható_szakasz // A tárolt eljárásban használt SQL utasítás END GO

Példa

- Hozzon létre egy eljárást, amely visszaadja a hallgató nevét, amikor a StudentId értéket adja meg a tárolt eljárás bemeneti paramétereként. Create PROCEDURE GetStudentName (@StudentId INT, --Input paraméter, @StudName VARCHAR (50) OUT --Output paraméter, AS KEZDÉS KIVÁLASZTÁSA @StudName = StudentName a StudentsInfo-tól WHERE StudentID = @ StudentId END

A végrehajtás lépései:

      • Nyilvánítsd @StudName nevét nvarchar néven (50)
      • EXEC GetStudentName 01, @StudName kimenet
      • Válassza ki a @StudName lehetőséget

A fenti eljárás egy adott hallgató nevét adja vissza,a tanulók azonosítójának megadásakor. Ezután az SQL Server oktatóanyagában ismerjük meg a tranzakcióvezérlő nyelv parancsait.

Tranzakcióvezérlő nyelv parancsai (TCL)

Az SQL Server oktatóanyag ezen szakasza betekintést nyújt az adatbázisban a tranzakciók kezelésére használt parancsokba.A parancsok a következők:

ELKÖVETNI

A COMMIT paranccsal a tranzakció menthető az adatbázisba.

Szintaxis

ELKÖVETNI

VISSZATÉRÉS

A ROLLBACK paranccsal az adatbázis visszaállítható az utolsó lekötött állapotra.

Szintaxis

VISSZATÉRÉS

JEGYZET: Ha a ROLLBACK alkalmazást használja a SAVEPOINT-tal, akkor közvetlenül a folyamatban lévő tranzakció során áttérhet a mentési pontra. Szintaxis: ROLLBACK TO SavepointName

SAVEPOINT

A SAVEPOINT parancs egy tranzakció ideiglenes mentésére szolgál. Tehát, ha vissza akar térni bármely pontra, mentheti ezt a pontot „SAVEPOINT” néven.

Szintaxis

SAVEPOINT SAVEPOINTNAME

Vegye figyelembe az alábbi táblázatot, hogy megértse a tranzakciók működését az adatbázisban.

Diákigazolvány Tanuló név
egyRohit
2Suhana
3Ashish
4Prerna

Most használja az alábbiakat megérteni az adatbázis tranzakcióit.

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 SZúrja be a StudentTable ÉRTÉKEKBE (8,' Veena ') SAVEPOINT S4 SELECT * FROM StudentTable

Az SQL Server bemutatójának következő cikkében ismertetjük, hogyan kezelhetjük a kivételeket a Transact-SQL rendszerben.

Kivételek kezelése

Kétféle kivétel létezik, azaz a rendszer által meghatározott és a felhasználó által definiált kivételek. Ahogy a neve is sugallja, a kivételkezelés olyan folyamat, amelynek révén a felhasználó kezelheti a generált kivételeket. A kivételek kezeléséhez meg kell értenie a következő vezérlési folyamatokat:

DOBÁS

Ez a záradék arra szolgál, hogy kivételt teremtsen, és a végrehajtást egy TRY… CATCH konstrukció CATCH blokkjára helyezi át.

Szintaxis

THROW [ErrorNumber, @localvariable, State] []

hol,

  • ErrorNumber - NAK NEKállandó vagy változó, amely a kivételt jelenti.
  • Üzenet - NAK NEKváltozó vagy karakterlánc, amely leírja a kivételt.
  • Állapot -0 és 255 közötti állandó vagy változó, amely jelzi az üzenethez társítandó állapotot.
Dobja az 51000-et, 'A nyilvántartás nem létezik.', 1

PRÓBÁLJÁK ..

Kivételek kezelésének megvalósítására szolgál a Transact-SQL-ben. A TRY blokkba állíthat egy állításcsoportot. Abban az esetben, ha hiba lép fel a TRY blokkban, a vezérlő egy másik utasításcsoportra kerül, amely egy CATCH blokkba van zárva.

Szintaxis

BEGIN TRY StatementBlock END TRY BEGIN FOGÁS [StatementBlock] END FOGÁS []
PRÓBA KIVÁLASZTÁS KEZDÉSE * FROM StudentsInfo VÉGE PRÓBA FOGÁS KEZDÉSE KIVÁLASZTÁS ERROR_NUMBER () AS ErNum, ERROR_MESSAGE () AS ErMsg END Catch

BAN BEN Ezzel a cikk végére értünk az SQL Server bemutatóról. Remélem, hogy élvezettel olvasta ezt a cikket az SQL Server bemutatóról kezdőknek.én Ha strukturált képzést szeretne kapni a MySQL-en, akkor nézze meg a következőt: amely oktató által vezetett élő képzéssel és valós projekt-tapasztalattal jár. Ez a képzés segít megérteni a MySQL-t alaposan, és elsajátítja a témát. Van egy kérdésünk? Kérjük, említse meg a megjegyzések részben. ” SQL Server oktatóanyag ”És visszatérek hozzád.