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 |
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. |
Ez a parancskészlet az adatbázis-rendszerek engedélyeivel, jogaival és egyéb vezérléseivel foglalkozik. | |
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:
- Mi az SQL Server?
- Telepítse az SQL Server szolgáltatást
- Csatlakozzon az SQL Serverhez SSMS használatával
- Access Database Engine
- SQL Server architektúra
- Megjegyzések SQL-ben
- SQL Server adattípusok
- Kulcsok az adatbázisban
- Korlátozások az adatbázisban
- Operátorok
- Összesített függvények
- Felhasználó által definiált funkciók
- Beágyazott lekérdezések
- Csatlakozik
- Hurkok
- Tárolt eljárások
- 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 |
egy | utálom | Akriti mehra | 9955339966 | 9. dandár útlezárása | Hyderabad | India |
2 | Manasa | Shourya Sharma | 9234568762 | Mayo út 15 | Kolkata | India |
3 | Anay | Soumya Mishra | 9876914261 | Marathalli-ház, 101. sz | Bengaluru | India |
4 | Preeti | Rohan Sinha | 9765432234 | Queens út 40 | Delhi | India |
5. | Shanaya | Abhinay agarwal | 9878969068 | Oberoi utca 21. szám | Mumbai | India |
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 | numerikus | Numerikus értékek tárolására, rögzített pontosságú és skálaszámokkal rendelkezik | - 10 ^ 38 +1 - 10 ^ 38 - 1. |
tinyint | Egész értékek tárolására szolgál | 0-tól 255-ig | |
smallint | Egész értékek tárolására szolgál | -2 ^ 15 (-32,768) - 2 ^ 15-1 (32,767) | |
bigint | Egé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) | |
int | Egész értékek tárolására szolgál | -2 ^ 31 (-2,147,483,648) - 2 ^ 31-1 (2 147 483 647) | |
bit | Egy egész adattípust tárol, amely 0, 1 vagy NULL értéket ad meg | 0, 1 vagy NULL | |
decimális | Numerikus értékek tárolására, rögzített pontosságú és skálaszámokkal rendelkezik | - 10 ^ 38 +1 - 10 ^ 38 - 1. | |
aprópénz | Monetáris tárolására szolgálvagy valutaértékek. | - 214 748,3648 - 214 748 3664 | |
pénz | Monetá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 |
igazi | Lebegő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átum | Dátum meghatározására szolgál az SQL Server szolgáltatásban. | Szintaxis: dátum |
smalldatetime | Olyan 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 | |
datetimeoffset | Olyan 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 | char | Fix méretű karakterek tárolására szolgál. | char[( n )] ahol n értéke 1-8000 között változik |
varchar | Vá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öveg | Tárolására használt variable hosszúságú nem Unicode adatok | A karakterlánc maximális hossza megengedett - 2 ^ 31-1 (2 147 483 647) | |
Unicode karakterláncok | nchar | Fix méretű karakterek tárolására szolgál. | nchar[(n)] ahol n értéke 1-4000 között változik |
nvarchar | Vá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. | |
ntext | Változó hosszúságú Unicode adatok tárolására szolgál | A karakterlánc maximális megengedett hossza - 2 ^ 30-1 (2 147 483 647) | |
Bináris húrok | bináris | Bármelyik rögzített hosszúságú bináris adattípusok tárolására szolgál | bináris[( n )] ahol n értéke 1-8000 között változik |
változatos | Bármelyik rögzített hosszúságú bináris adattípusok tárolására szolgál | vá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ép | Változó hosszúságú bináris adatok tárolására szolgál | 0 - 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ás | Automatikusan generált, egyedi bináris számok exponálására szolgál az adatbázisban. | - | |
hierarchyid | A hierarchiában elfoglalt pozíció képviseletére szolgál. | - | |
egyedi azonosító | 16 bájtos GUID. | Szintaxis:egyedi azonosító | |
sql_variant | Különféle SQL Server által támogatott adattípusok értékeinek tárolására szolgál | Szintaxis: sql_variant | |
xml | XML adattípus tárolására szolgál. | xml ([CONTENT | DOCUMENT] xml_schemacollection) | |
Térgeometria típusok | Az adatok ábrázolására szolgál egy euklideszi (lapos) koordináta-rendszerben. | - | |
Térföldrajzi típusok | Elipszoidá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. | - | |
asztal | Az 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 |
egy | utálom | 87 |
2 | Manasa | 92 |
4 | Anay | 74. |
Cél táblázat:
Diákigazolvány | Tanuló név | Jelek |
egy | utálom | 87 |
2 | Manasa | 67 |
3 | Saurabh | 55 |
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 |
egy | utálom | 87 |
2 | Manasa | 92 |
4 | Anay | 74. |
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:
- Számtani operátorok
- Feladatkezelők
- Bitenkénti operátorok
- Összehasonlító operátorok
- Összetett operátorok
- Logikai operátorok
- Hatályfeloldási operátorok
- Állítsa be az Operátorokat
- Karakterlánc-összefűző operátorok
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]) |
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 |
2 | tizenegy | Fizika |
3 | 12. | 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 |
egy | Rohit |
2 | Suhana |
3 | Ashish |
4 | Prerna |
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.