MODUL 6 - LEKCIJA 1

AI u SQL Server Svijetu

Korištenje GitHub Copilot-a, ChatGPT-a i AI asistenata za ultra-brzo pisanje i optimizaciju T-SQL koda

⏱️ Trajanje: ~2 časa 📚 Nivo: Svi nivoi 🎯 Praktični primjeri: 4

📖 Nova Era Developmenta

Pisanje SQL-a se promijenilo. Više ne morate pamtiti svaku klauzulu OPENJSON funkcije ili komplikovane XQuery sintakse. AI asistenti (poput GitHub Copilot-a ili Azure Data Studio AI) postali su vaš nerazdvojni par-programer.

🤖 GitHub Copilot u SQL Alatima

GitHub Copilot je dostupan kao ekstenzija u:

💡 Šta AI može uraditi za vas?

  • Generisanje kompleksnih JOIN-ova na osnovu naziva tabela.
  • Pretvaranje prirodnog jezika ("Daj mi top 5 kupaca iz Sarajeva") u SQL kod.
  • Objašnjavanje tuđeg, starog koda koji niko ne razumije.
  • Generisanje realističnih testnih podataka za testiranje.

✍️ Prompt Engineering za SQL

Rezultat koji dobijete od AI-a zavisi od toga koliko mu konteksta date. Dobar prompt za SQL treba sadržavati Shemu ili bar nazive kolona.

❌ Loš Prompt
"Napiši mi upit za narudžbe." 
-- Rezultat će biti previše generičan.
✅ Dobar Prompt
"Imam tabele Employees (ID, FirstName, LastName, DepartmentID) i Reports (ID, ReportName, CreatedBy, CreatedDate, DepartmentID). 
Napiši T-SQL upit koji vraća listu zaposlenika koji su kreirali više od 5 izvještaja u 2023. godini, 
koristeći Common Table Expression (CTE)."

🚀 AI za Optimizaciju

Jedna od najjačih primjena AI-a je Refactoring.

⚡ Refactoring Upita
-- Možete AI-u poslati spori upit i reći:
-- "Ovaj upit radi Table Scan. Kako da ga učinim SARGable?"

-- AI će predložiti:
-- Izbjegavanje funkcija unutar WHERE klauzule.
-- Kreiranje pokrivajućeg (Covering) indeksa.
-- Korištenje boljeg tipa podataka.

🎯 Praktična Vježba: Generisanje Testnih Podataka

Zadatak: Napuni bazu podacima

Trebate 100 redova testnih podataka za tabelu Marketing.Leads. Koristite AI (ChatGPT ili Copilot) da generišete INSERT skriptu sa realističnim bosanskim imenima i brojevima telefona.

💡 Primjer AI generisanog koda
INSERT INTO Marketing.Leads (FullName, Phone, City)
VALUES 
('Amar Selimović', '061-123-456', 'Sarajevo'),
('Emina Horvat', '062-987-654', 'Tuzla'),
-- ... (AI nastavlja niz) ...

🏁 ČESTITAMO!

Završili ste kompletan SQL Server 2022 Tutorial. Prešli ste dug put:

🏆 Sljedeći Koraci

Preporučujemo da instalirate SQL Server Management Studio (SSMS) 19+ ili Azure Data Studio i isprobate sve vježbe u praksi. Vaša karijera profesionalca za baze podataka počinje ovdje!