Na dnešnom trhu, kde sa každý deň generuje obrovské množstvo dát, je veľmi dôležité pochopiť, ako s nimi zachádzať. SQL Server je integrované prostredie vyvinuté spoločnosťou Microsoft na spracovanie údajov.V tomto článku v návode na server SQL Server sa naučíte všetky operácie a príkazy, ktoré potrebujete na preskúmanie svojich databáz.
Pre lepšie pochopenie som blog rozdelil do nasledujúcich kategórií:
Príkazy | Popis |
Táto sada príkazov sa používa na definovanie databázy. | |
Príkazy jazyka na manipuláciu s údajmi (DML) | Manipulačné príkazy sa používajú na manipuláciu s údajmi v databáze. |
Táto sada príkazov sa zaoberá oprávneniami, právami a inými ovládacími prvkami databázových systémov. | |
Tieto príkazy sú zvyknuté transakciu s databázou. |
Okrem príkazov sa v tomto článku zaoberáme nasledujúcimi témami:
- Čo je to SQL Server?
- Nainštalujte SQL Server
- Pripojte sa k serveru SQL Server pomocou protokolu SSMS
- Prístup k databázovému stroju
- Architektúra servera SQL Server
- Komentáre v SQL
- Dátové typy servera SQL Server
- Kľúče v databáze
- Obmedzenia v databáze
- Operátorov
- Súhrnné funkcie
- Užívateľom definované funkcie
- Vnorené dotazy
- Pripája sa
- Slučky
- Uložené procedúry
- Spracovanie výnimiek
***POZNÁMKA*** V tomto výučbe servera SQL Server zvážim nasledujúcu databázu akopríklad, ktorý vám ukáže, ako sa učiť a písaťpríkazy.
Študentská karta | Meno študenta | ParentName | Telefónne číslo | Adresa | Mesto | Krajina |
jeden | nenávidím | Akriti mehra | 9955339966 | Brigádny cestný blok 9 | Hyderabad | India |
2 | Manasa | Shourya Sharma | 9234568762 | Cesta Mayo 15 | Kalkata | India |
3 | Anay | Soumya Mishra | 9876914261 | Marathalliho dom č. 101 | Bengaluru | India |
4 | Preeti | Rohan Sinha | 9765432234 | Queens Road 40 | Dillí | India |
5 | Shanaya | Abhinayov agarwal | 9878969068 | Ulica Oberoi 21 | Bombaj | India |
Predtým, ako začneme rozumieť rôznym príkazom používaným na serveri SQL Server, pochopíme, čo je server SQL, jeho architektúra a ako ho nainštalovať.
Čo je to SQL Server?
Microsoft SQL Server je relačný systém správy databáz . Podporuje Štruktúrovaný Dopytovací Jazyk a prichádza s vlastnou implementáciou jazyka SQL, ktorým je Transact-SQL (T-SQL) . Má integrované prostredie na prácu s databázami SQL, čo je .
Kľúčové komponenty servera SQL Server sú:
- Databázový stroj: Táto súčasť spracováva úložisko, rýchle spracovanie transakcií a zabezpečenie údajov.
- SQL Server - Táto služba sa používa na spustenie, zastavenie, pozastavenie a pokračovanie inštancie servera MS SQL Server.
- Agent servera SQL Server - Služba Serverový agent hrá úlohu plánovača úloh a je spustená akoukoľvek udalosťou alebo podľa požiadavky.
- Prehliadač SQL Server - Táto služba sa používa na pripojenie prichádzajúcej žiadosti k požadovanej inštancii servera SQL Server.
- Fulltextové vyhľadávanie na serveri SQL Server - Slúži na to, aby používateľ mohol spustiť fulltextové dotazy na znakové údaje v tabuľkách SQL.
- Zapisovač VSS servera SQL Server - Umožňuje zálohovanie a obnovu dátových súborov, keď server SQL Server nefunguje.
- SQL Server Analysis Services (SSAS) - Táto služba sa používa na poskytovanie analýzy údajov, dolovanie údajov a schopnosti. SQL Server je tiež integrovaný s a R pre pokročilú analýzu dát.
- SQL Server Reporting Services (SSRS) - Ako naznačuje názov, táto služba sa používa na poskytovanie funkcií a rozhodovacích schopností vrátane integrácie s .
- SQL Server Integration Services (SSIS) - Táto služba sa používa na vykonávanie operácií ETL pre rôzne typy údajov z viacerých zdrojov údajov.
Teraz, keď viete, čo je MS SQL Server, posuňme sa v tomto článku v tutoriále k SQL Serveru a pochopme, ako nainštalovať a nastaviť SQL Server.
Nainštalujte SQL Server
Pri inštalácii servera SQL postupujte podľa nasledujúcich krokov:
Krok 1: Prejdite na oficiálnu stránku používateľa Stiahnutie servera Microsoft SQL Server , kde nájdete možnosť inštalovať SQL Server lokálne alebo na cloud.
Krok 2: Teraz posuňte zobrazenie nadol a uvidíte dve možnosti: Vydanie pre vývojárov a podniky . Tu budem sťahovať Vydanie pre vývojárov . Pre stiahnutie stačí kliknúť na Stiahni teraz možnosť. Pozri nižšie.
Krok 3: Po stiahnutí aplikácie dvakrát kliknite na súbor a zobrazí sa nasledujúce okno.
Krok 4: Teraz si môžete vybrať jednu z 3 možností nastavenia servera SQL Server. Tu si len vyberiem Základná možnosť . Po výbere možnosti typu inštalácie by na ďalšej obrazovke bolo prijať licenčnú zmluvu. Kliknite na ikonu súhlasiť v nasledujúcom okne.
Krok 5: Ďalej musíte určiť umiestnenie inštalácie servera SQL Server. Potom musíte kliknúť na Inštalovať.
Akonáhle kliknete na Inštalácia , uvidíte, že sa sťahujú požadované balíčky. Teraz, po dokončení inštalácie, sa zobrazí nasledujúca obrazovka:
Tu môžete buď ísť vpred a kliknúť na Pripojiť teraz, alebo môžete prispôsobiť inštaláciu. Pre vaše lepšie pochopenie pôjdem vpred a vyberiem si Prispôsobiť.
Krok 6: Akonáhle kliknete na Prispôsobiť vo vyššie uvedenom okne uvidíte, ako sa otvára nasledujúci sprievodca. v nasledujúcom okne kliknite na Ďalšie.
Krok 7: Po automatickej inštalácii pravidiel kliknite na Ďalšie . Pozri nižšie.
Krok 8: Ďalej musíte zvoliť typ inštalácie. Vyberte si Vykonajte a nová inštalácia servera SQL Server 2017 možnosť a potom kliknite na Ďalšie.
Krok 9: V sprievodcovi, ktorý sa otvorí, vyberte vydanie: Vývojár. Potom kliknite na Ďalšie . Pozri nižšie.
Krok 10: Teraz si prečítajte a prijmite licenčné zmluvy zaškrtnutím prepínača a potom kliknite na Ďalšie . Pozri nižšie.
Krok 11: V nasledujúcom sprievodcovi môžete zvoliť funkcie, ktoré chcete nainštalovať. Môžete tiež zvoliť koreňový adresár inštancie a potom kliknúť na Ďalšie . Tu si vyberiem Služby databázových strojov .
Krok 12: Ďalej musíte pomenovať inštanciu a automaticky sa vytvorí ID inštancie. Tu pomenujem inštanciu „edureka“. Potom kliknite na Ďalšie.
Krok 13: V sprievodcovi Konfigurácia servera kliknite na Ďalšie .
Krok 14: Teraz musíte povoliť režimy autentifikácie. Tu uvidíte Režim autentifikácie Windows a Zmiešaný režim . Vyberiem zmiešaný režim. Potom uveďte heslo a potom pridám aktuálneho používateľa ako Admin výberom možnosti Pridať aktuálneho používateľa možnosť.
Krok 15: Potom zvoľte cestu ku konfiguračnému súboru a kliknite na Inštalácia .
Po dokončení inštalácie sa zobrazí nasledujúca obrazovka:
Pripojte sa k serveru SQL Server pomocou protokolu SSMS
Po nainštalovaní servera SQL Server je ďalším krokom jeho pripojenie k serveru SQL Server Management Studio. Postupujte podľa nasledujúcich krokov:
Krok 1: Vráťte sa späť do nasledujúceho okna a kliknite na ikonu nainštalovať SSMS možnosť.
Krok 2: Po kliknutí na túto možnosť budete presmerovaní na stránku nasledujúca stránka , kde si musíte vybrať Stiahnite si SSMS.
Krok 3: Po stiahnutí nastavenia dvakrát kliknite na aplikáciu a zobrazí sa nasledujúci sprievodca.
Krok 4: Kliknite na Možnosť inštalácie , vo vyššie uvedenom okne a uvidíte, že táto inštalácia začne.
Krok 5: Po dokončení inštalácie sa zobrazí dialógové okno, ako je uvedené nižšie.
Po inštalácii SSMS je ďalším krokom prístup k Databázový stroj .
Prístup k databázovému stroju
Keď otvoríte Štúdio pre správu servera SQL z Úvodná ponuka , otvorí sa okno podobné oknu zobrazenému na obrázku nižšie.
Tu uveďte názov servera, režim overovania a kliknite na Pripojte sa.
Po kliknutí na Pripojte sa , uvidíte nasledujúcu obrazovku.
No tak, takto inštalujete a nastavujete SQL Server. Teraz v tomto výučbe pre SQL Server posuňme dopredu, pochopme rôzne komponenty architektúry SQL Servera.
Architektúra servera SQL Server
Architektúra servera SQL Server je nasledovná:
- Server & minus Toto je miesto, kde sú nainštalované služby SQL a nachádza sa databáza
- Relačný engine & minus Obsahuje analyzátor dotazov, optimalizátor a vykonávateľ a vykonávanie sa uskutoční v relačnom stroji.
- Parser príkazov & mínus Skontroluje syntax dotazu a prevedie dotaz do strojového jazyka.
- Optimalizátor & mínus Pripraví plán vykonania ako výstup, pričom na vstup vezme štatistiku, dotaz a strom Algebrator.
- Exekútor dopytov & mínus Na tomto mieste sa dotazy spúšťajú krok za krokom
- Skladovací motor & minus Je zodpovedný za ukladanie a načítanie údajov v úložnom systéme, manipuláciu s údajmi, správu a uzamykanie transakcií.
Teraz, keď viete, ako nastaviť a nainštalovať SQL Server a jeho rôzne komponenty, začnime s písaním Server. Ale predtým mi dovoľte vysvetliť, ako písať komentáre na serveri SQL Server.
Komentáre na serveri SQL Server
Existujú dva spôsoby, ako môžete komentovať v SQL, t. J. Buď použiť s interné riadkové komentáre alebo m ultrafialové komentáre .
Jednoriadkové komentáre
Jednoriadkové komentáre sa začínajú na dve pomlčky (-). Preto bude text uvedený za (-) až do konca jedného riadku kompilátor ignorovaný.
Príklad:
--Priklad komentárov k jednému riadku
Viacriadkové komentáre
Viacriadkové komentáre sa začínajú znakom / * a končia sa * / . Preto je text uvedený medzi / * a * / bude kompilátorom ignorovaný.
Príklad:
/ * Príklad pre viacriadkové komentáre * /
Teraz v tomto článku v návode na server SQL Server začnime s prvou sadou príkazov, t. J. Príkazmi Data Definition Language.
Príkazy jazyka definície údajov
Táto časť článku vám poskytne predstavu o príkazoch, pomocou ktorých môžete definovať svoju databázu. Príkazy sú nasledujúce:
VYTVORIŤ
Toto vyhlásenie sa používa na vytvorenie tabuľky, databázy alebo zobrazenia.
Vyhlásenie „VYTVORIŤ DATABÁZU“
Tento príkaz sa používa na vytvorenie databázy.
Syntax
VYTVORIŤ DATABÁZU DatabaseName
Príklad
VYTVORIŤ DATABÁZU Študenti
„ VYTVORIŤ TABUĽKU „Vyhlásenie
Ako už názov napovedá, tento príkaz sa používa na vytvorenie tabuľky.
Syntax
VYTVORIŤ TABUĽKU TableName (údajový typ stĺpca 1, údajový typ stĺpca 2, údajový typ stĺpca 3, .... údajový typ stĺpca N)
Príklad
CREATE TABLE StudentInfo (StudentID int, StudentName varchar (8000), ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000), City varchar (8000), Country varchar (8000))
POKLES
Toto vyhlásenie sa používa na zrušenie existujúcej tabuľky, databázy alebo zobrazenia.
Vyhlásenie „DROP DATABASE“
Toto vyhlásenie sa používa na zrušenie existujúcej databázy. Kompletné informácie v databáze sa stratia, hneď ako vykonáte príkaz uvedený nižšie.
Syntax
DROP DATABÁZA DatabaseName
Príklad
DROP DATABÁZA Študenti
Vyhlásenie „DROP TABLE“
Toto vyhlásenie sa používa na zrušenie existujúcej tabuľky. Kompletné informácie v tabuľke sa stratia, hneď ako vykonáte príkaz uvedený nižšie.
Syntax
DROP TABLE TableName
Príklad
DROP TABUĽKA StudentInfo
VEK
Príkaz ALTER sa používa na pridanie, odstránenie alebo úpravu stĺpcov alebo obmedzení v existujúcej tabuľke.
„ ZMENIŤ TABUĽKU „Vyhlásenie
Toto vyhlásenie sa používa na pridávanie, mazanie a úpravu stĺpcov v už existujúcej tabuľke.
Vyhlásenie „ALTER TABLE“ so PRIDAŤ / DROP STĹPEC
Príkaz ALTER TABLE sa používa s príkazom ADD / DROP Column na pridanie a odstránenie stĺpca.
Syntax
ALTER TABLE TableName ADD ColumnName Datatype ALTER TABLE TableName DROP COLUMN ColumnName
Príklad
--ADD Column BloodGroup: ALTER TABLE StudentInfo ADD BloodGroup varchar (8000) --DROP Column BloodGroup: ALTER TABLE StudentInfo DROP COLUMN BloodGroup
Vyhlásenie „ALTER TABLE“ s ALTER COLUMN
Príkaz ALTER TABLE je možné použiť so stĺpcom ALTER na zmenu dátového typu existujúceho stĺpca v tabuľke.
Syntax
ALTER TABLE TableName ALTER COLUMN ColumnName Datatype
Príklad
--Pridajte stĺpec DOB a zmeňte typ údajov z dátumu na dátum a čas. ALTER TABLE StudentInfo PRIDAŤ DOB dátum ALTER TABLE StudentInfo ALTER COLUMN DOB datetime
OCELIŤ
Tento príkaz SQL sa používa na odstránenie informácií v tabuľke, ale neodstráni ani samotnú tabuľku. Ak teda chcete vymazať informácie z tabuľky a nie samotnú tabuľku, musíte použiť príkaz TRUNCATE. Inak použite príkaz DROP.
Syntax
SKRATKA TABUĽKA TableName
Príklad
SKRATKA TABUĽKA StudentInfo
PREJMENOVAŤ
Tento príkaz sa používa na premenovanie jednej alebo viacerých tabuliek.
Syntax
sp_rename 'OldTableName', 'NewTableName'
Príklad
sp_rename 'StudentInfo', 'Infostudents'
Ak v tomto článku o výučbe SQL Server pokračujeme ďalej, pochopíme rôzne typy údajov, ktoré SQL Server podporuje.
Dátové typy servera SQL Server
Kategória dátových typov | Názov dátového typu | Popis | Rozsah / syntax |
Presná numerika | číselný | Používa sa na ukladanie číselných hodnôt s pevnou presnosťou a mierkou | - 10 ^ 38 +1 až 10 ^ 38 - 1. |
tinyint | Používa sa na ukladanie celočíselných hodnôt | 0 až 255 | |
smallint | Používa sa na ukladanie celočíselných hodnôt | -2 ^ 15 (-32 768) až 2 ^ 15-1 (32 767) | |
bigint | Používa sa na ukladanie celočíselných hodnôt | -2 ^ 63 (-9 223 372 036 854 775 808) až 2 ^ 63-1 (9 223 372 036 854 775 807) | |
int | Používa sa na ukladanie celočíselných hodnôt | -2 ^ 31 (-2 147 483 648) až 2 ^ 31-1 (2 147 483 647) | |
trocha | Ukladá celočíselný údajový typ, ktorý určuje hodnotu 0, 1 alebo NULL | 0, 1 alebo NULL | |
desatinný | Používa sa na ukladanie číselných hodnôt s pevnou presnosťou a mierkou | - 10 ^ 38 +1 až 10 ^ 38 - 1. | |
malé peniaze | Používa sa na ukladanie peňažných prostriedkovalebo meny. | - 214 748,3648 až 214 748 3647 | |
peniaze | Používa sa na ukladanie peňažných prostriedkovalebo meny. | -922 337 203 685 477,5808 až 922 337 203 685 477,5807 (-922 337 203 685 477,58 na 922 337 203 685 477,58 pre Informatica. | |
Približná numerika | plavák | Používa sa na ukladanie číselných údajov s pohyblivou rádovou čiarkou | - 1,79E + 308 až -2,23E-308, 0 a 2,23E-308 až 1,79E + 308 |
reálny | Používa sa na ukladanie číselných údajov s pohyblivou rádovou čiarkou | - 3,40E + 38 až -1,18E - 38, 0 a 1,18E - 38 až 3,40E + 38 | |
Dátum a čas | dátum | Používa sa na definovanie dátumu na serveri SQL Server. | Syntax: dátum |
smalldatetime | Používa sa na definovanie dátumu, ktorý je kombinovaný s denným časom, kedy je čas založený na 24-hodinovom dni, so sekundami vždy nula (: 00) a bez zlomkov sekúnd. | Syntax: smalldatetime | |
Dátum Čas | Slúži na definovanie dátumu, ktorý je kombinovaný s denným časom a zlomkami sekúnd na základe 24-hodinového času. | Syntax: datetime | |
datetime2 | datetime2 je ako rozšírenie existujúceho Dátum Čas typ, ktorý má väčšiu predvolenú zlomkovú presnosť, väčší rozsah dátumov. | Syntax: datetime2 | |
datetimeoffset | Používa sa na definovanie dátumu, ktorý je kombinovaný s časom dňa, ktorý má vedomie časového pásma. Je založený na 24-hodinovom režime. | Syntax: datetimeoffset | |
čas | Používa sa na definovanie denného času. | Syntax: čas | |
Reťazce znakov | char | Slúži na ukladanie znakov pevnej veľkosti. | char[( n )] kde n hodnota sa pohybuje od 1 - 8 000 |
varchar | Slúži na ukladanie znakov s premennou dĺžkou. | varchar [( n | max)], kde hodnota n sa pohybuje od 1 do 8 000 a maximálna povolená veľkosť úložiska sú 2 GB. | |
text | Používa sa na ukladanie vúdaje Unicode s nastaviteľnou dĺžkou | Maximálna povolená dĺžka reťazca - 2 ^ 31-1 (2 147 483 647) | |
Reťazce znakov Unicode | nchar | Slúži na ukladanie znakov pevnej veľkosti. | nchar[(n)], kde n hodnota sa pohybuje od 1 do 4 000 |
nvarchar | Slúži na ukladanie znakov s premennou dĺžkou. | varchar [( n | max)] kde hodnota n sa pohybuje od 1 do 4 000 a maximálna povolená veľkosť úložiska sú 2 GB. | |
ntext | Používa sa na ukladanie dát Unicode s premennou dĺžkou | Maximálna povolená dĺžka reťazca - 2 ^ 30-1 (2 147 483 647) | |
Binárne reťazce | binárne | Používa sa na ukladanie binárnych dátových typov buď s pevnou dĺžkou | binárne[( n )] kde n hodnota sa pohybuje od 1 - 8 000 |
varbinárne | Používa sa na ukladanie binárnych dátových typov buď s pevnou dĺžkou | varbinárne[( n )] kde n vale sa pohybuje od 1-8000 a maximálny povolený úložný priestor je 2 ^ 31-1 bajtov. | |
obrázok | Používa sa na ukladanie binárnych údajov s premennou dĺžkou | 0 - 2 ^ 31-1 (2 147 483 647) bajtov | |
Ostatné typy údajov | Je to dátový typ pre uloženú procedúru alebo premenné OUTPUT parametre, ktoré obsahujú odkaz na kurzor. | - | |
veslovanie | Používa sa na vystavenie automaticky generovaných jedinečných binárnych čísel v databáze. | - | |
hierarchyid | Používa sa na vyjadrenie pozície v hierarchii. | - | |
jedinečný identifikátor | Je 16-bajtový GUID. | Syntax:jedinečný identifikátor | |
sql_variant | Používa sa na ukladanie hodnôt rôznych dátových typov podporovaných serverom SQL Server | Syntax: sql_variant | |
xml | Používa sa na ukladanie dátových typov XML. | xml ([OBSAH | DOKUMENT] xml_schemacollection) | |
Typy priestorovej geometrie | Používa sa na reprezentáciu údajov v euklidovskom (plochom) súradnicovom systéme. | - | |
Typy priestorovej geografie | Používa sa na ukladanie elipsoidných údajov (guľatých zemí), napríklad súradníc zemepisnej šírky a dĺžky GPS. | - | |
stôl | Slúži na uloženie sady výsledkov na ďalšie spracovanie | - |
Ďalej v tomto článku pochopíme rôzne typy kľúčov a obmedzení v databáze.
Rôzne typy kľúčov v databáze
Nasledujú rôzne typy kľúčov používaných v databáze:
- Kľúč kandidáta - Kandidátsky kľúč je sada atribútov, ktoré dokážu jednoznačne identifikovať tabuľku. Tabuľka môže obsahovať viac ako jeden kľúč kandidáta a z vybraných kľúčov kandidáta je jeden kľúč vybraný ako primárny kľúč.
- Super kľúč - Sada atribútov môže jedinečne identifikovať n-ticu. Kandidátske kľúče, jedinečné kľúče a primárne kľúče sú teda super kľúčmi, ale naopak to nie je pravda.
- Primárny kľúč - Primárne kľúče sa používajú na jednoznačnú identifikáciu každej n-tice.
- Alternatívny kľúč - Alternatívne kľúče sú tie kandidátske kľúče, ktoré nie sú vybrané ako primárny kľúč.
- Unikátny kľúč- Jedinečné kľúče sú podobné primárnemu kľúču, v stĺpci však umožňujú jednu hodnotu NULL.
- Cudzí kľúč - Atribút, ktorý môže brať iba prítomné hodnoty ako hodnoty niektorého iného atribútu, je cudzí kľúč k atribútu, na ktorý sa vzťahuje.
- Kompozitný kľúč- Kompozitné kľúče sú kombináciou dvoch alebo viacerých stĺpcov, ktoré jedinečne identifikujú každú n-ticu.
Obmedzenia použité v databáze
Obmedzenia sa v databáze používajú na určenie pravidiel pre údaje uložené v tabuľke. Rôzne typy obmedzenia v SQL sú nasledujúce:
NIE NULL
Obmedzenie NOT NULL zaisťuje, že stĺpec nemôže mať hodnotu NULL.
Príklad
VYTVORIŤ TABUĽKU StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000)) --NOT NULL na ALTER TABLE ALTER TABLE StudentsInfo ALTER COLUMN PhoneNumber int NOT NULL
JEDINEČNÉ
Toto obmedzenie zaisťuje, že všetky hodnoty v stĺpci sú jedinečné.
Príklad
--UNIQUE na vytvorení tabuľky CREATE TABLE StudentsInfo (StudentID int NOT NULL UNIQUE, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar ( 8000)) --JEDINEČNÝ na viacerých stĺpcoch VYTVORIŤ TABUĽKU StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), krajina varchar (8000) CONSTRAINT UC_Student_Info UNIQUE (StudentID, PhoneNumber)) - UNIQUE na ALTER TABLE ALTER TABLE StudentsInfo ADD UNIQUE (StudentID) - Ak chcete zrušiť UNIQUE obmedzenie ALTER TABLE StudentsInfo DROP CONSTRAINT UC_Student_Info
SKONTROLUJTE
Obmedzenie CHECK zaisťuje, že všetky hodnoty v stĺpci vyhovujú konkrétnej podmienke.
Príklad
--CHECK Constraint on CREATE TABLE CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar ( 8000) CHECK (Country = 'India')) --CHECK Constraint on multiple columns CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, Mesto varchar (8000), Krajina varchar (8000) KONTROLA (Krajina = 'India' A Mesto = 'Hyderabad')) - KONTROLA Obmedzenie na ALTER TABLE ALTER TABLE StudentsInfo PRIDAŤ KONTROLU (Country = 'India') --Dať názov KONTROLA Obmedzenie ALTER TABUĽKA StudentsInfo PRIDAŤ OBMEDZENIE CheckConstraintName CHECK (Krajina = 'India') - Ak chcete zrušiť KONTROU Obmedzenie ALTER TABUĽKA StudentsInfo DROP OBMEDZENIE CheckConstraintName
VÝCHODNÉ
Obmedzenie DEFAULT pozostáva zo sady predvolených hodnôt pre stĺpec, ak nie je zadaná žiadna hodnota.
Príklad
--DEFAULT Constraint on CREATE TABLE CREATE TABLE StudentsInfo (StudentID int, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000) DEFAULT 'India') - DEFAULT Constraint on ALTER TABLE ALTER TABLE StudentsInfo ADD CONSTRAINT defau_Country DEFAULT 'India' FOR Country --To drop the Default Constraint ALTER TABLE StudentsInfo ALTER COLUMN Country DROP defau_Country
INDEX
The Obmedzenie INDEX sa používa na vytvorenie indexov v tabuľke, prostredníctvom ktorých môžete veľmi rýchlo vytvárať a načítať údaje z databázy.
Syntax
--Vytvorte index, v ktorom sú povolené duplicitné hodnoty CREATE INDEX IndexName ON TableName (Column1, Column2, ... ColumnN) --Vytvorte index, kde nie sú povolené duplicitné hodnoty CREATE UNIQUE INDEX IndexName ON TableName (Column1, Column2, ... StĺpecN)
Príklad
VYTVORIŤ INDEX idex_StudentName ON StudentsInfo (StudentName) - Odstránenie indexu z tabuľky DROP INDEX StudentsInfo.idex_StudentName
Ďalej v tomto článku o výučbe servera SQL Server poďme teraz pochopiť rôzne príkazy jazyka manipulácie s údajmi používané v serveri Microsoft SQL Server.
Príkazy jazyka na manipuláciu s údajmi
Táto časť článku sa bude zaoberať všetkými príkazmi, pomocou ktorých môžete manipulovať s databázou. Príkazy sú nasledujúce:
Okrem týchto príkazov existujú aj ďalšie manipulatívne operátory / funkcie, ako napríklad:
POUŽITIE
Tento príkaz sa používa na výber databázy, ktorá s ňou začne vykonávať rôzne operácie.
Syntax
nastavenie hadoop na ubuntu
USE DatabaseName
Príklad
POUŽÍVAJTE študentov
VLOŽIŤ DO
The Vyhlásenie INSERT INTO sa používa na vloženie nových záznamov do existujúcej tabuľky.
Syntax
INSERT INTO TableName (Column1, Column2, Column3, ..., ColumnN) VALUES (value1, value2, value3, ...) - Ak nechcete uvádzať názvy stĺpcov, použite nasledujúcu syntax INSERT INTO TableName VALUES (Hodnota1, Hodnota2, Hodnota3, ...)
Príklad
INSERT INTO StudentsInfo (StudentID, StudentName, ParentName, PhoneNumber, AddressofStudent, City, Country) VALUES ('06', 'Sanjana', 'Kapoor', '9977331199', 'Buffalo Street House No 10', 'Kolkata', 'India ') INSERT INTO StudentsInfo VALUES (' 07 ',' Vishal ',' Mishra ',' 9876509712 ',' Nice Road 15 ',' Pune ',' India ')
AKTUALIZÁCIA
Príkaz UPDATE sa používa na úpravu alebo aktualizáciu záznamov, ktoré sa už v tabuľke nachádzajú.
Syntax
AKTUALIZOVAŤ TableName SET Stĺpec1 = Hodnota1, Stĺpec2 = Hodnota2, ... KDE podmienka
Príklad
AKTUALIZOVAŤ StudentsInfo SET StudentName = 'Aahana', City = 'Ahmedabad' KDE StudentID = 1
ODSTRÁNIŤ
Príkaz DELETE sa používa na odstránenie existujúcich záznamov v tabuľke.
Syntax
ODSTRÁNIŤ Z TableName WHERE Podmienka
Príklad
ODSTRÁNIŤ ZO StudentsInfo KDE StudentName = 'Aahana'
Choď
Príkaz MERGE sa používa na vykonávanie operácií INSERT, UPDATE a DELETE na konkrétnej tabuľke, kde je uvedená zdrojová tabuľka. Pozri nižšie.
Syntax
ZLÚČIŤ TagretTableName POUŽITIE SourceTableName NA MergeCondition KEDY ZHODU POTOM Update_Statement KEDY ZHODU POTOM ZATVORIŤ Insert_Statement KEDY ZHODU ZDROJ POTOM nevymazať
Príklad
Aby ste porozumeli vyhláseniu ZLÚČENIE, nasledujúce tabuľky považujte za zdrojovú a cieľovú.
Zdrojová tabuľka:
Študentská karta | Meno študenta | Zn |
jeden | nenávidím | 87 |
2 | Manasa | 92 |
4 | Anay | 74 |
Cieľová tabuľka:
Študentská karta | Meno študenta | Zn |
jeden | nenávidím | 87 |
2 | Manasa | 67 |
3 | Saurabh | 55 |
ZLÚČIŤ CIEĽ SampleTargetTable CIEĽ S POUŽITÍM ZDROJA SampleSourceTable (TARGET.StudentID = SOURCE.StudentID) PRI ZHODE A CIEĽI.StudentName SOURCE.StudentName ALEBO TARGET.Marks SOURCE.Marks THEN UPDATE SET TARGET.Student = KEĎ NIE ZHODUJE CIEĽ POTOM VKLADAŤ (StudentID, StudentName, Značky) HODNOTY (SOURCE.StudentID, SOURCE.StudentName, SOURCE.Marks) KEDY SA ZHODUJE ZDROJ POTOM NE
Výkon
Študentská karta | Meno študenta | Zn |
jeden | nenávidím | 87 |
2 | Manasa | 92 |
4 | Anay | 74 |
VYBERTE
The Príkaz SELECT sa používa na výber údajov z databázy, tabuľky alebo zobrazenia. Vrátené údaje sú uložené vo výsledkovej tabuľke s názvom výsledková sada .
Syntax
SELECT Column1, Column2, ... ColumN FROM TableName - (*) sa používa na výber všetkých z tabuľky SELECT * FROM table_name - na výber počtu záznamov, ktoré sa majú použiť: SELECT TOP 3 * FROM TableName
Príklad
- Ak chcete vybrať niekoľko stĺpcov SELECT StudentID, StudentName FROM StudentsInfo - (*) sa používa na výber všetkých z tabuľky SELECT * FROM StudentsInfo - Ak chcete zvoliť počet záznamov, ktoré sa majú vrátiť, použite: SELECT TOP 3 * FROM StudentsInfo
S príkazom SELECT môžeme použiť aj nasledujúce kľúčové slová:
ODLIŠNÝ
Kľúčové slovo DISTINCT sa používa s príkazom SELECT na vrátenie iba rôznych hodnôt.
Syntax
VYBERTE DISTINCT Stĺpec1, Stĺpec2, ... StĺpecN FROM TableName
Príklad
VYBERTE DISTINCT telefónne číslo OD StudentsInfo
ZORADIŤ PODĽA
Tento príkaz sa používa na triedenie požadovaných výsledkov vo vzostupnom alebo zostupnom poradí. Výsledky sa predvolene ukladajú vzostupne. Ak však chcete získať výsledky zostupne, musíte použiť POPIS kľúčové slovo.
Syntax
VYBERTE Stĺpec1, Stĺpec2, ... StĺpecN Z TABUĽKY OBJEDNÁVKA podľa Stĺpca1, Stĺpca2, ... ASC | DESC
Príklad
- Vyberte všetkých študentov z tabuľky „StudentsInfo“ zoradených podľa názvu rodiča: SELECT * FROM StudentsInfo OBJEDNAŤ PODĽA ParentName - vyberte všetkých študentov z tabuľky „StudentsInfo“ zoradených podľa názvu rodiča v zostupnom poradí: SELECT * FROM StudentsInfo OBJEDNAŤ podľa názvu rodiča DESC - Vyberte všetkých študentov z tabuľky „StudentsInfo“ zoradených podľa názvu rodiča a študenta: SELECT * FROM StudentsInfo OBJEDNAŤ podľa názvu rodiča, StudentName / * Vyberte všetkých študentov z tabuľky „StudentsInfo“ zoradeného podľa názvu rodiča v zostupnom poradí a názvu študenta vo vzostupnom poradí: * / SELECT * FROM StudentsInfo OBJEDNÁVKA PODĽA ParentName ASC, StudentName DESC
SKUPINA PODĽA
Toto vyhlásenie sa používa s agregačné funkcie zoskupiť množinu výsledkov do jedného alebo viacerých stĺpcov.
Syntax
VYBERTE Stĺpec1, Stĺpec2, ..., StĺpecN OD TABUĽKY KDE Podmienka SKUPINU PODĽA Názvu Stĺpca OBJEDNAŤ PODĽA Názvu
Príklad
- Uveďte počet študentov z každého mesta. VYBERTE POČET (StudentID), Mesto ZO študentaInfo SKUPINA PODĽA mesta
Zoskupovacie súpravy
SKUPINOVÉ SADY boli predstavené v serveri SQL Server 2008 a používajú sa na generovanie výsledkovej sady, ktorú môže generovať server VŠETKO ÚNIA z viacerých jednoduchých klauzúl GROUP BY.
Syntax
VYBERTE Názvy stĺpcov Z TABUĽKY SKUPINA PODĽA ZOSKUPOVACÍCH SÚPRAV (Názvy stĺpcov)
Príklad
VYBERTE StudentID, StudentName, COUNT (mesto) zo skupiny StudentsInfo PODĽA SKUPINOVÝCH SÚPRAV ((StudentID, StudentName, City), (StudentID), (StudentName), (City))
MAJÚCI
Toto ustanovenie sa používa v scenári, keď KDE kľúčové slovo nemôže byť použitý.
Syntax
VYBERTE Názvy stĺpcov FROM TableName KDE Podmienka SKUPINU PODĽA Názvu stĺpca S podmienkou OBJEDNAŤ PODĽA Názvu stĺpca
Príklad
ZVOLIŤ POČET (StudentID), Mesto FROM StudentsInfo SKUPINU PODĽA MESIA MÁ POČET (StudentID)> 2 OBJEDNAŤ POČET (StudentID) DESC
DO
Kľúčové slovo INTO je možné použiť s Príkaz SELECT kopírovať údaje z jednej tabuľky do druhej. Tieto tabuľky môžete chápať ako dočasné tabuľky. Dočasné tabuľky sa zvyčajne používajú na vykonávanie manipulácií s údajmi v tabuľke bez narušenia pôvodnej tabuľky.
Syntax
SELECT * INTO NewTable [IN ExternalDB] FROM OldTable WHERE Condition
Príklad
- Vytvorenie zálohy tabuľky 'StudentsInfo' SELECT * INTO StudentsBackup FROM StudentsInfo --Ak chcete vybrať iba niekoľko stĺpcov z StudentsInfo SELECT StudentName, PhoneNumber INTO StudentsDetails FROM StudentsInfo SELECT * INTO PuneStudents FROM StudentsInfo KDE Mesto = 'Pune'
KOSTKA
CUBE je nadstavbou Klauzula GROUP BY . Umožňuje vám generovať medzisúčty pre všetky kombinácie zoskupovacích stĺpcov uvedených v klauzule GROUP BY.
Syntax
VYBERTE Názvy stĺpcov Z SKUPINY Názov_tabuľky PODĽA KOCKY (NázovSloupca1, NázovSloupca2, ....., NázovSloupcaN)
Príklad
ZVOLTE ID študenta, POČET (mesto) ZO SKUPINY StudentsInfo PODĽA KOCKY (ID študenta) OBJEDNAŤ PODĽA StudentID
VYHRNÚŤ
ROLLUP je rozšírením klauzuly GROUP BY. To vám umožní zahrnúť ďalšie riadky, ktoré predstavujú medzisúčty. Tieto sa označujú ako superagregované riadky spolu s riadkom celkového súčtu.
Syntax
VYBERTE Názvy stĺpcov Z SKUPINY TableName SKUPINOU PODĽA ZRUŠENIA (NázovSloupca1, NázovSloupca2, ....., NázovSloupcaN)
Príklad
VYBERTE ID študenta, POČET (mesto) ZO SKUPINY StudentsInfo PODĽA SKUPINY (ID študenta)
OFFSET
Klauzula OFFSET sa používa s príkazmi SELECT a Vyhlásenie OBJEDNAŤ PODĽA na získanie rozsahu záznamov. Musí sa použiť s klauzulou ORDER BY, pretože ju nemožno použiť samostatne. Rozsah, ktorý spomeniete, musí byť tiež rovný alebo väčší ako 0. Ak uvediete zápornú hodnotu, zobrazí sa chyba.
Syntax
VYBERTE Názvy stĺpcov) FROM TableName KDE Podmienka OBJEDNAŤ PODĽA Názvy stĺpcov OFFSET RowsToSkip RIADKY
Príklad
Zvážte nový stĺpec Zn v StudentsInfo stôl.
VYBERTE StudentName, ParentName FROM StudentsInfo OBJEDNAŤ OD ZNAČIEK POSUNUTIE O 1 RAD
FETCH
Klauzula FETCH sa používa na vrátenie množiny riadkov. Musí sa použiť v spojení s klauzulou OFFSET.
Syntax
VYBERTE Názvy stĺpcov) Z TABUĽKY KDE Podmienka OBJEDNAŤ PODĽA Názvu stĺpca (y) OFFSET RowsToSkip FETCH NEXT NumberOfRows LEN RIADKY
Príklad
VYBERTE StudentName, ParentName FROM StudentsInfo OBJEDNAŤ OD ZNAČIEK OFFSET 1 RÁDIA DOSTAŤ ĎALŠIE 1 RÁD
TOP
Klauzula TOP sa používa s príkazom SELECT na uvedenie počtu záznamov, ktoré sa majú vrátiť.
Syntax
VYBERTE Najvyššie číslo Názov stĺpca (ov) FROM TableName KDE Podmienka
Príklad
VYBERTE NAJLEPŠÍCH 3 * ZO StudentsInfo
PIVOT
PIVOT sa používa na rotáciu riadkov na hodnoty stĺpcov a podľa potreby spúšťa agregácie so zvyšnými hodnotami stĺpca.
Syntax
SELECT NonPivoted ColumnName, [First Pivoted ColumnName] AS ColumnName, [Second Pivoted ColumnName] AS ColumnName, [Third Pivoted ColumnName] AS ColumnName, ... [Last Pivoted ColumnName] AS ColumnName FROM (SELECT query which produce the data) AS [alias pre počiatočný dopyt] PIVOT ([AggregationFunction] (ColumName) FOR [ColumnName stĺpca, ktorého hodnoty sa stanú hlavičkami stĺpcov] IN ([First Pivoted ColumnName], [Second Pivoted ColumnName], [Third Pivoted ColumnName] ... [last otočený stĺpec])) AS [alias pre kontingenčnú tabuľku]
Príklad
Podrobný príklad nájdete v časti môj článok o SQL PIVOT a UNPIVOT . Ďalej v tomto výučbe servera SQL sa pozrime na rôzne operátory podporované serverom Microsoft SQL Server.
Operátorov
The rôzne typy operátorov podporované serverom SQL Server, sú nasledujúce:
- Aritmetické operátory
- Prevádzkovatelia pridelenia
- Bitoví operátori
- Prevádzkovatelia porovnania
- Zložené operátory
- Logickí operátori
- Prevádzkovatelia riešenia rozsahu
- Nastaviť operátorov
- Operátori reťazenia reťazcov
Poďme diskutovať každý z nich jeden po druhom.
Aritmetické operátory
Prevádzkovateľ | Význam | Syntax |
+ | Dodatok | výraz + výraz |
- | Odčítanie | výraz - výraz |
* | Násobenie | výraz * výraz |
/ | Divison | výraz / výraz |
% | Modulárny | výraz% výraz |
Prevádzkovatelia pridelenia
Prevádzkovateľ | Význam | Syntax |
= | Priraďte hodnotu premennej | premenná = „hodnota“ |
Bitoví operátori
Prevádzkovateľ | Význam | Syntax |
& (Po bitoch AND) | Používa sa na vykonávanie bitovej logickej operácie AND medzi dvoma celočíselnými hodnotami. | výraz a výraz |
& = (Bitové priradenie AND) | Používa sa na vykonávanie bitovej logickej operácie AND medzi dvoma celočíselnými hodnotami. Nastavuje tiež hodnotu výstupu operácie. | výraz & = výraz |
| (Bitové ALEBO) | Používa sa na vykonávanie bitovej logickej operácie OR medzi dvoma celočíselnými hodnotami preloženými do binárnych výrazov v rámci príkazov Transact-SQL. | výraz | výraz |
| = (Bitové ALEBO priradenie) | Používa sa na vykonávanie bitovej logickej operácie OR medzi dvoma celočíselnými hodnotami preloženými do binárnych výrazov v rámci príkazov Transact-SQL. Nastavuje tiež hodnotu výstupu operácie. | výraz | = výraz |
^ (Bitové exkluzívne ALEBO) | Používa sa na vykonávanie bitovej výlučnej operácie OR medzi dvoma celočíselnými hodnotami. | výraz ^ výraz |
^ = (Bitové exkluzívne alebo priradené) | Používa sa na vykonávanie bitovej výlučnej operácie OR medzi dvoma celočíselnými hodnotami. Nastavuje tiež hodnotu výstupu operácie. | výraz ^ = výraz |
~ (Bitové NIE) | Používa sa na vykonávanie bitovej logickej operácie NIE na celočíselnej hodnote. | ~ výraz |
Prevádzkovatelia porovnania
Prevádzkovateľ | Význam | Syntax |
= | Rovná | výraz = výraz |
> | Väčší než | výraz> výraz |
< | Menej ako | výraz |
> = | Väčšie alebo rovné | výraz> = výraz krížové testovanie pomocou selénu |
<= | Menej alebo rovné | výraz<= expression |
Nie rovné | výraz výraz | |
! = | Nie rovné | výraz! = výraz |
!< | Nie menej ako | výraz! |
!> | Nie väčšie ako | výraz!> výraz |
Zložené operátory
Prevádzkovateľ | Význam | Syntax |
+ = | Používa sa na pridanie hodnoty k pôvodnej hodnote a nastavenie pôvodnej hodnoty k výsledku. | výraz + = výraz |
- = | Používa sa na odpočítanie hodnoty od pôvodnej hodnoty a nastavenie pôvodnej hodnoty k výsledku. | výraz - = výraz |
* = | Používa sa na vynásobenie hodnoty pôvodnou hodnotou a nastavenie pôvodnej hodnoty na výsledok. | výraz * = výraz |
/ = | Používa sa na rozdelenie hodnoty od pôvodnej hodnoty a nastavenie pôvodnej hodnoty na výsledok. | výraz / = výraz |
% = | Používa sa na rozdelenie hodnoty od pôvodnej hodnoty a nastavenie pôvodnej hodnoty na výsledok. | výraz% = výraz |
& = | Používa sa na vykonanie bitovej operácie AND a na nastavenie pôvodnej hodnoty. | výraz & = výraz |
^ = | Používa sa na vykonávanie bitovej výlučnej operácie OR a na nastavenie pôvodnej hodnoty. | výraz ^ = výraz |
| = | Používa sa na vykonanie bitovej operácie ALEBO a na nastavenie pôvodnej hodnoty. | výraz | = výraz |
Logickí operátori
Prevádzkovateľ | Význam | Syntax |
VŠETKY | Vráti hodnotu TRUE, ak sú všetky množiny porovnaní TRUE. | scalar_expression! = ALL (poddotaz) |
A | Vráti TRUE, ak sú obidva výrazy TRUE. | boolean_expression A boolean_expression |
AKÝKOĽVEK | Vráti hodnotu TRUE, ak má ktorákoľvek zo sady porovnaní hodnotu PRAVDA. | skalárny_výraz! = {ANY} (poddotaz) |
MEDZI | Vráti hodnotu TRUE, ak je operand v rozsahu. | sampleexpression [NIE] MEDZI beginexpresiou A endexpresiou |
EXISTUJE | Vráti hodnotu TRUE, ak poddotaz obsahuje nejaké riadky. | EXISTUJE (vedľajší dopyt) |
IN | Vráti hodnotu TRUE, ak sa operand rovná jednému zo zoznamu výrazov. | test_expression [NOT] IN (subquery | expression [,… n]) |
Vráti hodnotu TRUE, ak sa operand zhoduje so vzorom. | match_expression [NIE] LIKE vzor [ESCAPE escape_character] | |
NIE | Obráti hodnotu ľubovoľného boolovského operátora. | [NOT] boolean_expression |
ALEBO | Vráti hodnotu TRUE, ak má ktorýkoľvek z boolovských výrazov hodnotu TRUE. | boolean_expression ALEBO boolean_expression |
NIEKTORÉ | Vráti hodnotu TRUE, ak je niektorá zo sady porovnaní PRAVDA. | skalárny_výraz<= { SOME} ( subquery ) |
Prevádzkovatelia riešenia rozsahu
Prevádzkovateľ | Význam | Príklad |
:: | Poskytuje prístup k statickým členom zloženého údajového typu. Zložené dátové typy sú tie dátové typy, ktoré obsahujú viac metód a jednoduché dátové typy. Zložené dátové typy Patria sem zabudované typy CLR a vlastné typy definované používateľom SQLCLR (UDT). | DECLARE @hid hierarchyid SELECT @hid = hierarchyid :: GetRoot () PRINT @ hid.ToString () |
Nastaviť operátorov
Existujú hlavne tri nastavené operácie:ÚNIA,PRIŤAŽTE sa,MÍNUS. Na obrázku nižšie môžete porozumieť nastaveným operáciám v jazyku SQL. Pozrite si nasledujúci obrázok:
Prevádzkovateľ | Význam | Syntax |
ÚNIA | Operátor UNION sa používa na kombináciu výsledkovej sady dvoch alebo viacerých príkazov SELECT. | VYBERTE Názvy stĺpcov Z tabuľky1 ÚNIA VYBERTE Názvy stĺpcov Z Tabuľky2 |
PRIŤAŽTE sa | Klauzula INTERSECT sa používa na kombináciu dvochVYBERTEpríkazov a vráti priesečník súborov dát oboch príkazov SELECT. | VYBERTE Stĺpec1, Stĺpec2 .... FROM TableName KDE Podmienka PRIŤAŽTE sa VYBERTE Stĺpec1, Stĺpec2 .... FROM TableName KDE Podmienka |
S VÝNIMKOU | Operátor EXCEPT vráti tie n-tice, ktoré sú vrátené prvou operáciou SELECT a nie sú vrátené druhou operáciou SELECT. | VYBERTE názov stĺpca FROM TableName S VÝNIMKOU VYBERTE názov stĺpca FROM TableName |
Prevádzkovatelia reťazcov
Prevádzkovateľ | Význam | Syntax / príklad |
+ (Zreťazenie reťazca) | Spojí dva alebo viac binárnych alebo znakových reťazcov, stĺpcov alebo kombinácie reťazcov a názvov stĺpcov do jedného výrazu | výraz + výraz |
+ = (Zreťazenie reťazca) | Používa sa na zreťazenie dvoch reťazcov a nastavenie reťazca na výsledok operácie. | výraz + = výraz |
% (Zodpovedajúce zástupné znaky) | Používa sa na priradenie ľubovoľného reťazca s nulovým alebo viac znakmi. | Príklad: ‘sample%’ |
[] (Zástupné znaky sa zhodujú) | Používa sa na priradenie jedného znaku v zadanom rozsahu alebo množine, ktorá je uvedená v zátvorkách []. | Príklad: m [n-z]% ‘ |
[^] (Zástupné znaky sa zhodujú) | Používa sa na priradenie jedného znaku, ktorý nie je v rozsahu alebo množine špecifikovanej v hranatých zátvorkách. | Príklad: „Al [^ a]%“ |
_ (Zástupné znaky, ktoré sa majú zhodovať) | Používa sa na priradenie jedného znaku v operácii porovnania reťazcov | test_expression [NOT] IN (subquery | expression [,… n]) |
Agregát Funkcie
Iné agregačné funkcie podporované serverom SQL Server, sú nasledujúce:
Funkcia | Popis | Syntax | Príklad |
SUM () | Používa sa na vrátenie súčtu skupiny hodnôt. | VYBERTE SUM (ColumnName) Z TableName | VYBERTE SUM (známky) Z StudentsInfo |
COUNT () | Vráti počet riadkov buď na základe podmienky, alebo bez podmienky. | VYBERTE POČET (ColumnName) Z TableName WHERE Podmienka | VYBERTE POČET (ID študenta) Z StudentsInfo |
AVG () | Používa sa na výpočet priemernej hodnoty číselného stĺpca. | VYBERTE AVG (ColumnName) Z TableName | VYBERTE AVG (značky) Z StudentsInfo |
MIN () | Táto funkcia vráti minimálnu hodnotu stĺpca. | VYBERTE MIN (ColumnName) Z TableName | VYBERTE MIN (značky) Z StudentsInfo |
MAX () | Vráti maximálnu hodnotu stĺpca. | VYBERTE MAX (ColumnName) Z TableName | VYBERTE MAX (známky) Z StudentsInfo |
NAJPRV() | Používa sa na vrátenie prvej hodnoty stĺpca. | VYBERTE PRVÝ (ColumnName) Z TableName | VYBERTE PRVÝ (známky) Z StudentsInfo |
POSLEDNÉ () | Táto funkcia vráti poslednú hodnotu stĺpca. | VYBERTE POSLEDNÉ (ColumnName) Z TableName | VYBERTE POSLEDNÉ (značky) Z StudentsInfo |
Užívateľom definované funkcie
Microsoft SQL Server umožňuje používateľom vytvárať užívateľom definované funkcie, ktoré sú rutinami. Tieto rutiny prijímajú parametre, môžu vykonávať jednoduché až zložité akcie a vrátiť výsledok konkrétnej akcie ako hodnotu. Tu môže byť vrátenou hodnotou buď jedna skalárna hodnota, alebo úplná množina výsledkov.
Užívateľom definované funkcie môžete použiť na:
- Povoliť modulárne programovanie
- Znížte prenos v sieti
- Umožniť rýchlejšie vykonávanie dotazov
Môžete tiež vytvoriť rôzne typy funkcií definovaných používateľom. Oni sú:
- Skalárne funkcie: Zvyknutývráti jednu dátovú hodnotu typu definovaného v klauzule RETURNS.
- Tabuľkové funkcie: Zvyknutývrátiť astôlDátový typ.
- Funkcie systému: SQL Server poskytuje rôzne systémové funkcie na vykonávanie rôznych operácií.
Okrem užívateľsky definovaných funkcií existuje na serveri SQL Server množstvo zabudovaných funkcií, ktoré možno použiť na vykonávanie rôznych úloh. Ak v tomto článku v príručke SQL Server pokračujeme, pochopme, čo sú vnorené dotazy.
Vnorené dotazy
Vnorené dotazy sú tie dotazy, ktoré majú vonkajší dotaz a vnútorný poddotaz. V podstate je teda poddotazom dopyt, ktorý je vnorený do iného dotazu, ako napríklad SELECT, INSERT, UPDATE alebo DELETE. Pozrite si obrázok nižšie:
Ďalej v tomto výučbe pre SQL Server, poďme pochopiť rôzne typy spojení v SQL.
Pripája sa
sa používajú na kombinovanie n-tíc z dvoch alebo viacerých tabuliek na základe súvisiaceho stĺpca medzi tabuľkami. Existujú štyri typy spojení:
- VNÚTORNÉ PRIPOJENIE: Vráti záznamy, ktoré majú v oboch tabuľkách zhodné hodnoty.
- ZĽAVA PRIPOJTE SA: Vráti záznamy z ľavej tabuľky a tiež tie záznamy, ktoré vyhovujú podmienkam z pravej tabuľky.
- PRAVÉ PRIPOJENIE: Vráti záznamy z pravej tabuľky a tiež tie záznamy, ktoré vyhovujú podmienkam z ľavej tabuľky.
- FULL JOIN: Vráti záznamy, ktoré majú zhodu v ľavej alebo pravej tabuľke.
Zvážte nasledujúcu tabuľku spolu s tabuľkou StudentsInfo, aby ste pochopili syntax spojenia.
SubjectID | Študentská karta | SubjectName |
10 | 10 | Matematika |
2 | jedenásť | Fyzika |
3 | 12 | Chémia |
VNÚTORNÉ PRIPOJENIE
Syntax
VYBERTE Názvy stĺpcov Z tabuľky1 VNÚTORNÉ PRIPOJENIE Table2 ON Table1.ColumnName = Table2.ColumnName
Príklad
VYBERTE Predmety.SubjectID, StudentsInfo.StudentName Z PREDMETOV VNÚTORNE SA PRIPOJTE K StudentInfo ON Predmety.StudentID = StudentsInfo.StudentID
VĽAVO SA PRIPOJTE
Syntax
VYBERTE Názvy stĺpcov Z tabuľky1 LEFT JOIN Table2 ON Table1.ColumnName = Table2.ColumnName
Príklad
VYBERTE študentovInfo.StudentName, predmety.SubjectID ZO StudentsInfo LEVÉ PRIPOJTE sa k predmetom na StudentsInfo.SubjectID = predmety.SubjectID OBJEDNÁVKA podľa StudentsInfo.StudentName
SPRÁVNE SA PRIPOJTE
Syntax
VYBERTE Názvy stĺpcov Z tabuľky1 PRAVÉ PRIPOJENIE Table2 ON Table1.ColumnName = Table2.ColumnName
Príklad
VYBERTE študentovInfo.StudentName, predmety.SubjectID ZO StudentsInfo PRÁVO PRIPOJTE sa na predmety ON StudentsInfo.SubjectID = predmety.SubjectID OBJEDNÁVKA podľa StudentsInfo.StudentName
PLNÝ PRIPOJTE SA
Syntax
VYBERTE Názvy stĺpcov Z tabuľky1 PLNÉ VONKAJŠIE PRIPOJENIE Table2 ON Table1.ColumnName = Table2.ColumnName
Príklad
VYBERTE študentovInfo.StudentName, Subjekty.SubjectID ZO StudentsInfo PLNÉ VONKAJŠIE PRIPOJTE sa Predmety NA StudentsInfo.SubjectID = Subjekty.SubjectID OBJEDNÁVKA podľa StudentsInfo.StudentName
Ďalej v tomto článku o výučbe servera SQL Server pochopíme rôzne typy slučiek podporované serverom SQL Server.
Slučky
Rôzne príkazy riadenia toku sú nasledujúce:
Poďme diskutovať každý z nich jeden po druhom.
ZAČAŤ..ZÁVER
Tieto kľúčové slová sa používajú na uzavretie série príkazov SQL. Potom je možné vykonať túto skupinu príkazov SQL.
Syntax
ZAČÍNAME StatementBlock KONIEC
PRESTÁVKA
Tento príkaz sa používa na ukončenie aktuálnej slučky WHILE. V prípade, že je aktuálna slučka WHILE vnorená do inej slučky, potom príkaz BREAK opustí iba aktuálnu slučku a riadenie sa odovzdá ďalšiemu príkazu v aktuálnej slučke. Príkaz BREAK sa zvyčajne používa vo vnútri príkazu IF.
Syntax
PRESTÁVKA
ĎALEJ
Príkaz POKRAČOVAŤ sa používa na reštartovanie slučky WHILE. Takže akékoľvek výroky za kľúčovým slovom POKRAČOVAŤ budú ignorované.
Syntax
ĎALEJ
Štítok je bod, po ktorom sa spustí spracovanie, ak je GOTO zacielené na konkrétny štítok.
ÍSŤ DO
Používa sa na zmenu postupu vykonávania štítku. Príkazy napísané za kľúčovým slovom GOTO sú preskočené a spracovanie pokračuje na štítku.
Syntax
Definujte štítok: Štítok: Zmeniť spustenie: Štítok GOTO
Štítok je bod, po ktorom sa spustí spracovanie, ak je GOTO zacielené na konkrétny štítok.
AK..INDE
Rovnako ako akýkoľvek iný programovací jazyk, príkaz If-else na serveri SQL Server testuje podmienku a ak je podmienka nepravdivá, vykoná sa príkaz ‚else‘.
Syntax
IF BooleanExpression StatementBlock [ELSE StatementBlock]
NÁVRAT
Používa sa na bezpodmienečné ukončenie dotazu alebo procedúry. Príkazy, ktoré sa zapíšu za klauzulou RETURN, sa teda nevykonajú.
Syntax
NÁVRAT [IntegerExpression]
Tu sa vráti celočíselná hodnota.
ČAKAŤ NA
Tok riadenia WAITFOR sa používa na blokovanie vykonávania uloženej procedúry, transakcie alebo dávky, kým sa konkrétny príkaz nezmení, nevráti aspoň jeden riadok alebo neuplynie určený čas alebo časový interval.
Syntax
WAITFOR (GetConversionGroupStatement)] [, TIMEOUT časový limit]
kde,
- Meškanie - Časové obdobie, ktoré musí uplynúť
- TimeToPass - Pdoba čakania
- TIME -čas, kedy beží uložená procedúra, transakcia alebo dávka.
- TimeToExecute -čas, v ktorom sa ukončí výkaz WAITFOR.
- Príjmové vyhlásenie - DOplatný výpis RECEIVE.
- GetConversionGroupStatement - DOplatné vyhlásenie ZÍSKAŤ KONVERZÁCIU.
- Časový limit TIMEOUT - Určuje časové obdobie v milisekundách, po ktoré sa má čakať na doručenie správy do frontu.
POČAS
Táto slučka sa používa na nastavenie podmienky pre opakované vykonávanie konkrétneho príkazu SQL alebo bloku príkazov SQL. Príkazy sa vykonávajú, pokiaľ je podmienka uvedená používateľom TRUE. Hneď ako podmienka zlyhá, slučka sa zastaví.
Syntax
WHILE BooleanExpression StatementBlock
Teraz, keď viete, DML príkazy, prejdime na našu ďalšiu časťv tomto článku o výučbe SQL, t. j. príkazoch DCL.
Príkazy jazyka na kontrolu údajov (DCL)
Táto časť výučby servera SQL Server vám poskytne predstavu o príkazoch, pomocou ktorých sa používa na vynútenie zabezpečenia databázy vo viacerých databázových prostrediach používateľov. Príkazy sú nasledujúce:
GRANT
Príkaz GRANT sa používa na poskytnutie prístupu alebo privilégií k databáze a jej objektom používateľom.
Syntax
UDELIŤ PrivilegeName NA ZÁZNAM ObjectName NA RoleName [S MOŽNOSŤOU GRANTU]
kde,
- Názov privilégia - Je používateľovi udelené privilégium / právo / prístup.
- ObjectName - Názov databázového objektu, napríklad TABUĽKA / ZOBRAZENIE / ULOŽENÝ PROC.
- UserName - Meno používateľa, ktorému bol udelený prístup / práva / privilégiá.
- VEREJNÉ - Udeliť prístupové práva všetkým používateľom.
- Názov roly - Názov skupiny privilégií zoskupených.
- S GRANTOVOU MOŽNOSŤOU - Poskytnúť používateľovi prístup na udelenie práv iným používateľom.
Príklad
- Udeliť oprávnenie SELECT na tabuľku StudentsInfo používateľovi1 GRANTOVAŤ VÝBER NA ONLINE študentovInfo1
ODVOLAŤ
Príkaz REVOKE sa používa na odobratie prístupových oprávnení používateľa zadaných pomocou príkazu GRANT.
Syntax
ZRUŠIŤ PrivilegeName NA ObjectName Z VEREJNOSTI
Príklad
- Odvolať udelené povolenie od používateľa1 ZRUŠTE VÝBER NA ONI StudentInfo NA používateľa1
Ďalej v tomto výučbe pre server SQL Server pochopíme, ako vytvárať a používať uložené procedúry.
Uložené procedúry
Uložené procedúry sú opakovane použiteľné jednotky, ktoré zapuzdrujú konkrétnu obchodnú logiku aplikácie. Ide teda o skupinu príkazov a logiky SQL, ktoré sú kompilované a ukladané spoločne na vykonanie konkrétnej úlohy.
Syntax
VYTVORTE [ALEBO VYMEŇTE] POSTUP procedure_name [(parameter_name [IN | OUT | IN OUT] typ [])] ZAČÍNA [deklarácia_sekcia] spustiteľný_sekcia // Príkaz SQL použitý v uloženej procedúre END GO
Príklad
--Vytvorte procedúru, ktorá vráti meno študenta, keď sa StudentId zadá ako vstupný parameter do uloženej procedúry Create PROCEDURE GetStudentName (@StudentId INT, --Input parameter, @StudName VARCHAR (50) OUT --Output parameter, AS ZAČAŤ VYBERAŤ @StudName = StudentName FROM StudentsInfo KDE StudentID = @ StudentId END
Kroky na vykonanie:
- Deklarovať @StudName ako nvarchar (50)
- EXEC GetStudentName 01, výstup @StudName
- SELECT @StudName
Vyššie uvedený postup vráti meno konkrétneho študenta,na tom, že študentom bude zadaný vstup. Ďalej v tomto výučbe servera SQL Server pochopíme príkazy jazyka riadenia transakcií.
Príkazy jazyka pre kontrolu transakcií (TCL)
Táto časť tutoriálu pre SQL Server vám poskytne prehľad o príkazoch, ktoré sa používajú na správu transakcií v databáze.Príkazy sú nasledujúce:
POVINNOSŤ
Príkaz COMMIT sa používa na uloženie transakcie do databázy.
Syntax
POVINNOSŤ
ROLLBACK
Príkaz ROLLBACK sa používa na obnovenie databázy do posledného potvrdeného stavu.
Syntax
ROLLBACK
POZNÁMKA: Ak použijete ROLLBACK s SAVEPOINT, môžete v prebiehajúcej transakcii priamo skočiť na bod uloženia. Syntax: ROLLBACK TO SavepointName
SAVEPOINT
Príkaz SAVEPOINT sa používa na dočasné uloženie transakcie. Ak sa chcete vrátiť späť k ľubovoľnému bodu, môžete tento bod uložiť ako „SAVEPOINT“.
Syntax
základy servera sql pre začiatočníkov
SAVEPOINT SAVEPOINTNAME
V nasledujúcej tabuľke nájdete informácie o fungovaní transakcií v databáze.
Študentská karta | Meno študenta |
jeden | Rohit |
2 | Suhana |
3 | Ashish |
4 | Prerna |
Teraz použite nižšie porozumieť transakciám v databáze.
INSERT INTO StudentTable VALUES (5, 'Avinash') COMMIT UPDATE StudentTable SET name = 'Akash' WHERE id = '5' SAVEPOINT S1 INSERT INTO StudentTable VALUES (6, 'Sanjana') SAVEPOINT S2 INSERT INTO StudentTable VALUES (7, 'Sanjay ') SAVEPOINT S3 INSERT INTO StudentTable VALUES (8,' Veena ') SAVEPOINT S4 SELECT * FROM StudentTable
Ďalej v tomto článku v návode na server SQL Server nám pomôžeme pochopiť, ako zvládnuť výnimky v Transact-SQL.
Spracovanie výnimiek
Existujú dva typy výnimiek, t. J. Systémovo definované výnimky a používateľom definované výnimky. Ako už názov napovedá, spracovanie výnimiek je proces, prostredníctvom ktorého môže používateľ spracovávať vygenerované výnimky. Pri spracovávaní výnimiek musíte rozumieť nasledujúcim príkazom toku riadenia:
HODINOU
Táto klauzula sa používa na vyvolanie výnimky a na prenos vykonania do bloku CATCH konštrukcie TRY ... CATCH.
Syntax
THROW [ErrorNumber, @localvariable, State] []
kde,
- Číslo chyby - DOkonštanta alebo premenná, ktorá predstavuje výnimku.
- Správa - DOpremenná alebo reťazec, ktorý popisuje výnimku.
- Štát -Konštanta alebo premenná medzi 0 a 255, ktorá označuje stav, ktorý sa má spojiť so správou.
THROW 51000, „Záznam neexistuje.“, 1
SKÚS CHYTIŤ
Používa sa na implementáciu spracovania výnimiek v Transact-SQL. V bloku TRY je možné uzavrieť skupinu výpisov. V prípade, že sa v bloku TRY vyskytne chyba, riadenie sa odovzdá inej skupine príkazov, ktoré sú uzavreté v bloku CATCH.
Syntax
ZAČÍNAME SKÚŠAŤ StatementBlock UKONČIŤ SKÚŠAŤ ZAČÍNAŤ ÚLOHU [StatementBlock] KONIEC ÚPRAVY []
ZAČAŤ VYBERAŤ SKÚŠOK * ZO StudentsInfo UKONČIŤ SKÚŠAŤ ZVOLIŤ VÝBER CHYBY ERROR_NUMBER () AKO ErNum, ERROR_MESSAGE () AKO ErMsg UKONČIŤ KONIEC
IN Týmto sa dostávame na koniec tohto článku v príručke SQL Server Tutorial. Dúfam, že ste si tento článok prečítali v príručke SQL Server Tutorial For Beginners.Ja Ak chcete získať štruktúrované školenie o MySQL, pozrite si naše ktorá prináša živé školenie vedené inštruktorom a skúsenosti s projektmi v reálnom živote. Toto školenie vám pomôže pochopiť MySQL do hĺbky a pomôže vám dosiahnuť osvojenie si témy. Máte na nás otázku? Uveďte to v sekcii komentárov stránky ” Výukový program pre SQL Server “A ozvem sa ti.