A tanfolyamról
A képzés verziófüggetlen, a 20464 és 20762 kódú hivatalos Microsoft tanfolyamok tematikájára épül.
Részlet az oktató által összeállított jegyzet bevezetőjéből:
"Ha alaposabban szemügyre vesszük a jegyzet címét, jóllehet nem túl hosszú, mégis azonnal némi furcsaságot vehetünk észre benne: SQL programozás?! Nincs itt valami ellentmondás? Annak idején az SQL nyelvet adattáblákból való információ kinyerésre, lekérdezésekre hozták létre, maga a név a Structured Query Language szavak kezdőbetűiből áll össze. A lekérdezéshez a SELECT kulcsszót használhatjuk rengeteg változatban: WHERE feltétellel, ORDER BY rendezéssel, GROUP BY csoportképzéssel stb. A standard SQL nyelvezet kiegészült az adatmanipulációs (DML: data manipulation language) utasításokkal: INSERT, UPDATE, DELETE, hisz az adatok karbantartását, a beszúrást, a módosítást, a törlést is célszerű SQL utasításokkal végezni. Ez a relatíve szűk utasításkészlet hogy jön össze a programozás szóval?
Ha valaki a programozás szót hallja, akkor adattípusok, változók, vezérlési szerkezetek jutnak eszébe, ami szöges ellentétben áll az SQL nyelv alaplogikájával: programozás nélkül egyszerű utasításokkal nyerjünk ki információt a rendszerből. Ebben a környezetben a programozás szó ugyanazt jelenti, mint Visual Basic, C#, Oberon, Python vagy egyéb programnyelvek világában? Mindezen gondolatébresztő kérdésekre igen választ adhatunk. A standard SQL nyelvet különböző, adatbáziskezelőket forgalmazó cégek kiegészítették a programozáshoz szükséges elemekkel, így lett Transact-SQL Microsoftnál, PL-SQL Oracle-nél. Mindezek után az SQL nyelvben is megjelentek változók, vezérlési szerkezetek, eljárások, függvények, mindazok az elemek, amiket más programnyelvekben is megtalálhatunk."
Tematika
-
1. SQL Server elemeinek áttekintése
- Az SQL Server platform
- Az SQL Server eszközei programozói szemmel
- Query Window
-
2. Adattípusok
- Az adattípusok kategorizálása
- Numerikus típusok
- Karakteres típusok
- Dátum, idő típusok
- Speciális adattípusok: BLOB, XML, térbeli
- Konverzió adattípusok között
-
3. Műveletek táblákkal
- Táblák tervezése
- Táblák sémába szervezése
- Táblák létrehozása, módosítása
- Táblák particionálása
-
4. Adatintegritás biztosítása constraint-ekkel
- Sor, oszlop és hivatkozási integritás
- PRIMARY KEY, FOREIGN KEY
- DEFAULT, CHECK contraint
-
5. SQL Server adattáblák indexelése
- "Klasszikus" indexek
- Clustered, non-clustered indexek
- Egyszerű, összetett indexek
- Speciális adattípusok indexelése
- Lekérdezések gyorsítása
-
6. Táblastruktúrák SQL Server-en
- Táblák tárolása SQL Server-en
- Lapok, extent-ek, allokációs lapok, pointerek
- HEAP, forwarding pointer
- Indexek: clustered, non-clustered
- Adattípusok
-
7. Lekérdezési tervek elemzése
- Mit tudunk kiolvasni a lekérdezési tervből?
- A lekérdezési terv elemei
- Összehasonlító elemzések
-
8. Lekérdezések hatékonyságának fokozása non-clustered indexekkel
- Hatékony non-clustered indexek tervezése
- Non-clustered indexek létrehozása, tesztelése
- Lekérdezések nyomkövetése, tuningolása
-
9. Nézetek tervezése és használata
- Nézetekről általánosságban: mire használhatók, előnyei
- Nézet létrehozása
- Nézetek teljesítmény vonatkozásban
-
10. Tárolt eljárások tervezése és használata
- Tárolt eljárásokról általánosságban: mire használhatók, előnyei
- Tárolt eljárás létrehozása
- Paraméter átadás, bemenő, kimenő paraméterek
- Eljárások hívása
- Rekurzió
- Futtatási környezet EXECUTE AS kulcsszó
-
11. Adatok összefésülése
- A MERGE utasítás
- Beszúrás és módosítás egymenetben
- WHEN MATHCED, WHEN NOT MATCHED, OUTPUT kulcszavak használata
-
12. Felhasználói függvények tervezése és használata
- Fügvényekről általánosságban: mire használhatók, előnyei
- Skalár függvények
- Tábla típussal visszatérő függvények
-
13. Magasfokú konkurencia kezelése SQL Server 2012 alkalmazásokban
- Tranzakciók: implicit, explicit
- Lockolások
- shared, schema, exclusive
- Tranzakciók elszigetelési szintjei
- READ COMMITTEDtől a SNAPSHOT izolációs szintig
-
14. Struktúrált hibakezelés
- A struktúrált hibakezelés elemei
- A TRY - CATCH blokk szerkezete
- Az Error objektum információi
- Hibák súlyossági szintjei
- Felhasználói hibaüzetenek
-
15. Triggerek
- Triggerekről általánosságban: mire használhatók, előnyei
- DML triggerek tervezése és használata
- DDL triggerek tervezése és használata
- Triggerek teljesítmény szempontból
- Triggerek sorrendje
- Közvetlen, közvetett rekurzió
- Constrain kontra trigger, kombinációk
-
16. Munka térbeli adatokkal
- Térbeli adatokról általánosságban
- Térbeli koordináták tárolása
- Térbeli adatok lekérdezése
- Térbeli adatok indexelése
-
17. Full-Text indexek
- Keresés szöveges adatokban
- Full-Text index tervezése, megvalósítása és használata
- Lekérdezések full-text indexszel
Kinek ajánljuk
Előfeltételek
A tanfolyam elvégzéséhez az adatbázisok lekérdezéséhez szükséges alap SQL parancsok, valamint relációs adatbázisok struktúrális felépítésének ismerete elengedhetetlen.