Knjiga nas postupno i usmereno vodi ka sticanju osnovnih, a kasnije i naprednih znanja i koncepata baza podataka i SQL servera. Autori na koncizan način, odmerenim i jasnim primerima uspevaju da čitaoca uvedu u apstraktni svet, ukazujući na vezu između baza podataka i realnih koncepata koje one implementiraju.
Dugogodišnje iskustvo na realnim projektima i implementacijama utkano je u tekst ove knjige i sve date primere, pružajući čitaocu uvid u realne probleme i njihova rešenja. Autori na ovaj način uspevaju da čitaoca na najbolji način pripreme na realne situacije sa kojima će se u praksi susretati.
Knjiga „SQL programiranje – sa primerima u SQL server bazi podataka” zbog jedinstvenog pristupa autora, uspeva ne samo da čitaoca nauči SQL programiranju već i da prenese način razmišljanja i pristup potreban za uspešno SQL programiranje i projektovanje baza podataka. Upravo to čini ovu knjigu jedinstvenom i dragocenom za sve one koji žele ući u svet SQL programiranja.
Bratislav Dimitrov
recenzent
Sadržaj
Uvod
1. SQL upitni jezik
1.1 Elementi SQL jezika
1.2 SQL naredbe
2. Tipovi podataka
2.1 Numerički tipovi
2.2 Datumski i vremenski tipovi
2.3 Karakter tipovi
2.4 Ostali tipovi
2.5 Konverzija tipova podataka
3. Baze podataka
3.1 Vrste baza podataka
3.2 Kreiranje korisničkih baza podataka
3.3 Collation
3.4 Zadaci za vežbanje
4. Tabele
4.1 Kreiranje tabela
4.2 IDENTITY i SEQUENCE
4.3 Privremene tabele
4.4 Zadaci za vežbanje
5. SELECT naredba
5.1 Pisanje SELECT naredbe
5.2 Logički redosled izvršavanja SELECT naredbe
5.3 Eliminisanje duplih redova pomoću DISTINCT
5.4 Korišćenje pseudonima (alijasa) za kolone i tabele
5.5 Pisanje CASE izraza u SELECT naredbi
5.6 Zadaci za vežbanje
6. Pretraživanje više tabela
6.1 Terminologija i sintaksa
6.2 INNER JOIN
6.3 OUTER JOIN
6.4 CROSS JOIN
6.5 SELF JOIN
6.6 Zadaci za vežbanje
7. Sortiranje i filtriranje podataka
7.1 ORDER BY
7.2 WHERE
7.3 TOP
7.4 OFFSET-FETCH
7.5 Filtriranje NULL oznaka
7.6 Zadaci za vežbanje
8. Grupisanje podataka
8.1 Agregatne funkcije
8.2 GROUP BY i HAVING
8.3 Zadaci za vežbanje
9. Podupiti
9.1 Skalarni podupiti
9.2 Viševrednosni podupiti
9.3 Tabelarni podupiti
9.3.1 Izvedene tabele
9.3.2 CTE izrazi
9.4 EXISTS
9.5 Zadaci za vežbanje
10. SET operatori
10.1 UNION
10.2 EXCEPT i INTERSECT
10.3 APPLY operator
10.4 Zadaci za vežbanje
11. Prozorske funkcije
11.1 Rangirajuće prozorske funkcije
11.2 Agregatne prozorske funkcije
11.3 Vrednosne prozorske funkcije
11.4 Zadaci za vežbanje
12. Unos, promena i brisanje podataka
12.1 Unos podataka
12.2 Promena podataka
12.3 Brisanje podataka
12.4 Zadaci za vežbanje
13. Integritet podataka
13.1 Domenski integritet
13.2 Integritet entiteta
13.3 Referencijalni integritet
13.4 Zadaci za vežbanje
14. Dizajn i implementacija View objekata
14.1 Kreiranje i korišćenje View objekta
14.2 Opcije prilikom kreiranja View objekta
14.3 Lanac vlasništva i View objekti
14.4 Informacije o postojećim View objektima
14.5 Indeksirani View objekti
14.6 Particionisani View objekti
14.7 Izmene podataka preko View objekta
15. Obrada grešaka u SQL programskom jeziku
15.1 Microsoft SQL server i njegove poruke
15.2 Struktuirana obrada greške
15.3 Korisnički definisane poruke na SQL serveru i njihovo korišćenje
16. Transakcije i konkurentni – višekorisnički rad u SQL serveru
16.1 Transakcije
16.2 Ugnježdene transakcije
16.3 Konkurentni – višekorisnički rad na SQL serveru
17. Uskladištene procedure
18. Korisnički definisane funkcije
18.1 Skalarne korisnički definisane funkcije
18.2 Inline Table-Valued funkcije
18.3 Multistatement Table-Valued funkcije
19. Okidači
19.1 DML okidači
19.2 DDL okidači
19.3 Logon okidači
20. Memorijske optimizovane tabele i prirodno kompajlirane uskladištene procedure
20.1 Memorijske optimizovane tabele
20.2 Prirodno kompajlirane uskladištene procedure
21. Integracija SQL Servera i koda napisanog u .NET Framework platformi
22. SQL server i XML podaci
22.1 XML struktura
22.2 Skladištenje XML šema i podataka na SQL serveru
22.3 XML schema kolekcije
22.4 XQuery upiti
22.5 XML Indeksi
22.6 Korišćenje SELECT upita sa klauzulama FOR XML i FOR JSON
23. Skladištenje velikih binarnih podataka u SQL serveru
23.1 FILESTREAM
23.2 FILESTREAM implementacija
23.3 FileTable tabela
24. Full Text pretraga i Full Text indeksiranje
24.1 Koraci za kreiranje Full Text indeksa
24.2 Korišćenje Full Text indeksa
Preduslovi za vežbanje
Prilog 1 – Microsoft SQL server instalacija
Prilog 2 – Instaliranje SSMS klijenta
Prilog 3 – Kreiranje WWI_SQL baze podataka
Prilog 4 – Opis WWI_SQL baze podataka
Rešenja zadataka