Top 50 pitanja i odgovora na intervjuu za SQL Server (2025.)
Pitanja i odgovori za intervju za SQL Server za brucoše
1. Koja su dva načina provjere autentičnosti u SQL Serveru?
Postoje dva načina autentifikacije –
- Windows način
- Mješoviti način rada
Načini se mogu promijeniti odabirom izbornika alata svojstava konfiguracije SQL Servera i odabirom sigurnosne stranice.
👉 Besplatno preuzimanje PDF-a: Pitanja i odgovori za intervju za SQL Server
2. Što je SQL Profiler?
SQL Profiler je alat koji administratoru sustava omogućuje praćenje događaja na SQL poslužitelju. Ovo se uglavnom koristi za snimanje i spremanje podataka o svakom događaju datoteke ili tablice za analizu.
3. Što je rekurzivna pohranjena procedura?
SQL Server podržava rekurzivnu pohranjenu proceduru koja poziva sama. Rekurzivna pohranjena procedura može se definirati kao metoda rješavanja problema pri čemu se do rješenja dolazi opetovano. Može se ugnijezditi do 32 razine.
CREATE PROCEDURE [dbo].[Fact] ( @Number Integer, @RetVal Integer OUTPUT ) AS DECLARE @In Integer DECLARE @Out Integer IF @Number != 1 BEGIN SELECT @In = @Number – 1 EXEC Fact @In, @Out OUTPUT - Same stored procedure has been called again(Recursively) SELECT @RetVal = @Number * @Out END ELSE BEGIN SELECT @RetVal = 1 END RETURN GO
4. Koje su razlike između lokalnih i globalnih privremenih tablica?
- Lokalne privremene tablice vidljive su kada postoji veza, a brišu se kada se veza zatvori.
CREATE TABLE #<tablename>
- Globalne privremene tablice vidljive su svim korisnicima i brišu se kada se zatvori veza koja ih je stvorila.
CREATE TABLE ##<tablename>
5. Što je CHECK ograničenje?
Ograničenje CHECK može se primijeniti na stupac u tablici kako bi se ograničile vrijednosti koje se mogu smjestiti u stupac. Ograničenje provjere služi za provođenje cjelovitosti.
6. Mogu li se SQL poslužitelji povezati s drugim poslužiteljima?
SQL poslužitelj može se povezati s bilo kojom bazom podataka koja ima OLE-DB pružatelja za povezivanje. Primjer: Oracle ima OLE-DB pružatelja koji ima vezu za povezivanje s grupom SQL poslužitelja.
7. Što je podupit i njegova svojstva?
Podupit je upit koji se može ugniježditi unutar glavnog upita poput naredbi Select, Update, Insert ili Delete. Ovo se može koristiti kada je izražavanje dopušteno. Svojstva podupita mogu se definirati kao
- Podupit ne bi trebao imati klauzulu poredak po
- Podupit treba postaviti na desnu stranu operatora usporedbe glavnog upita
- Podupit treba staviti u zagradu jer se prvo mora izvršiti prije glavnog upita
- Može se uključiti više od jednog podupita
8. Koje su vrste podupita?
Postoje tri vrste podupita –
- Podupit s jednim redom koji vraća samo jedan red
- Podupit s više redaka koji vraća više redaka
- Podupit s više stupaca koji vraća više stupaca glavnom upitu. S tim rezultatom podupita izvršit će se glavni upit.
9. Što je SQL server agent?
SQL Server agent igra vitalnu ulogu u svakodnevnim zadacima administratora SQL poslužitelja (DBA). Svrha poslužiteljskog agenta je jednostavna implementacija zadataka pomoću mehanizma za raspoređivanje koji omogućuje izvođenje naših poslova na zakazani datum i vrijeme.
10. Što su planirani zadaci u SQL Serveru?
Planirani zadaci ili poslovi koriste se za automatizaciju procesa koji se mogu pokrenuti u zakazano vrijeme u redovitim intervalima. Ovo raspoređivanje zadataka pomaže u smanjenju ljudske intervencije tijekom noći i hranjenje se može obavljati u određeno vrijeme. Korisnik također može naručiti zadatke u kojima se mora generirati.
11. Što je COALESCE u SQL Serveru?
COALESCE se koristi za vraćanje prvog izraza koji nije nula unutar argumenata. Ova se funkcija koristi za vraćanje vrijednosti koja nije null iz više od jednog stupca u argumentima.
Primjer -
Select COALESCE(empno, empname, salary) from employee;
12. Kako se može postupati s iznimkama u programiranju SQL poslužitelja?
Iznimke se rješavaju korištenjem TRY—-CATCH konstrukcija i njima se upravlja pisanjem skripti unutar TRY bloka i rukovanjem pogreškama u CATCH bloku.
13. Koja je svrha funkcije FLOOR?
Funkcija FLOOR koristi se za zaokruživanje vrijednosti koja nije cijeli broj na prethodni najmanji cijeli broj. Naveden je primjer
FLOOR(6.7)
Povratak 6.
14. Možemo li provjeriti zaključavanja u bazi podataka? Ako je tako, kako možemo izvršiti ovu provjeru zaključavanja?
Da, možemo provjeriti zaključavanja u bazi podataka. To se može postići korištenjem ugrađene pohranjene procedure pod nazivom sp_lock.
15. Čemu služi funkcija SIGN?
Funkcija SIGN koristi se za određivanje je li navedeni broj pozitivan, negativan i nula. Ovo će vratiti +1, -1 ili 0.
Primjer -
SIGN(-35) returns -1
16. Što je okidač?
Okidači se koriste za izvršavanje serije SQL koda kada se na tablici izvršavaju naredbe za umetanje, ažuriranje ili brisanje. Okidači se automatski pokreću ili izvršavaju kada se podaci izmijene. Može se automatski izvršiti pri operacijama umetanja, brisanja i ažuriranja.
17. Koje su vrste okidača?
Postoje četiri vrste okidača, a to su:
- umetak
- Izbrisati
- Nadopune
- Umjesto
18. Što je stupac IDENTITY u izjavama za umetanje?
Stupac IDENTITY koristi se u stupcima tablice kako bi taj stupac postao automatski inkrementalni broj ili zamjenski ključ.
19. Što je Bulkcopy u SQL-u?
Bulkcopy je alat koji se koristi za kopiranje velike količine podataka iz tablica. Ovaj se alat koristi za učitavanje velike količine podataka u SQL Server.
20. Koji će se upit koristiti za dobivanje popisa okidača u bazi podataka?
Upit za dobivanje popisa okidača u bazi podataka-
Select * from sys.objects where type='tr'
21. Koja je razlika između UNION i UNION ALL?
- UNION: Za odabir povezanih informacija iz dvije tablice koristi se naredba UNION. Slična je naredbi JOIN.
- UNION All: Naredba UNION ALL jednaka je naredbi UNION, osim što UNION ALL odabire sve vrijednosti. Neće ukloniti duplicirane retke, umjesto toga će dohvatiti sve retke iz svih tablica.
22. Kako su predstavljene globalne privremene tablice i njihov opseg?
Globalne privremene tablice predstavljene su s ## prije naziva tablice. Opseg će biti izvan sesije dok su lokalne privremene tablice unutar sesije. ID sesije može se pronaći pomoću @@SPID.
Pitanja i odgovori za intervju za SQL Server za iskusne
23. Koje su razlike između pohranjene procedure i dinamičkog SQL-a?
Pohranjena procedura je skup iskaza koji je pohranjen u kompiliranom obliku. Dinamički SQL je skup izjava koje se dinamički konstruiraju tijekom izvođenja i neće biti pohranjene u bazi podataka i jednostavno se izvršavaju tijekom izvođenja.
24. Što je Collation?
Razvrstavanje je definirano za određivanje redoslijeda sortiranja u tablici. Postoje tri vrste redoslijeda sortiranja –
- Osjetljivo na velika i mala slova
- Neosjetljivo na velika i mala slova
- Binarni
25. Kako možemo dobiti broj zapisa u tablici?
Slijede upiti koji se mogu koristiti za dobivanje broja zapisa u tablici –
Select * from <tablename> Select count(*) from <tablename> Select rows from sysindexes where id=OBJECT_ID(tablename) and indid<2
26. Koja se naredba koristi za dobivanje verzije SQL Servera?
Select SERVERPROPERTY('productversion')
koristi se za dobivanje verzije SQL Servera.
27. Što je naredba UPDATE_STATISTICS?
Naredba UPDATE_STATISTICS koristi se za ažuriranje indeksa u tablicama kada postoji velika količina brisanja ili izmjena ili skupnog kopiranja u indeksima.
28. Čemu služi naredba SET NOCOUNT ON/OFF?
Prema zadanim postavkama, NOCOUNT je postavljen na ISKLJUČENO i vraća broj zapisa koji su pogođeni kad god se naredba izvršava. Ako korisnik ne želi prikazati broj zapisa na koje se to odnosi, može se eksplicitno postaviti na ON- (SET NOCOUNT ON).
29. Koja se tablica SQL poslužitelja koristi za držanje skripti pohranjene procedure?
Sys.SQL_Modules je tablica SQL Servera koja se koristi za pohranu skripte pohranjene procedure. Naziv pohranjene procedure sprema se u tablicu pod nazivom Sys.Procedures.
30. Što su čarobne tablice u SQL Serveru?
Tijekom DML operacija kao što su Umetanje, Brisanje i Ažuriranje, SQL Server stvara čarobne tablice za čuvanje vrijednosti tijekom DML operacija. Ove čarobne tablice koriste se unutar okidača za transakciju podataka.
31. Koja je razlika između SUBSTR i CHARINDEX u SQL Serveru?
Funkcija SUBSTR koristi se za vraćanje određenog dijela niza u danom nizu. No, funkcija CHARINDEX daje položaj znaka u zadanom navedenom nizu.
SUBSTRING('Smiley',1,3)
Daje rezultat kao Smi
CHARINDEX('i', 'Smiley',1)
Daje 3 kao rezultat jer se I pojavljuje u 3rd položaj žice
32. Kako možete kreirati prijavu?
Možete koristiti sljedeću naredbu za kreiranje prijave
CREATE LOGIN MyLogin WITH PASSWORD = '123';
33. Što je ISNULL() operator?
Funkcija ISNULL koristi se za provjeru je li dana vrijednost NULL ili nije NULL u sql poslužitelju. Ova funkcija također omogućuje zamjenu vrijednosti s NULL.
34. Čemu služi klauzula FOR?
FOR klauzula se uglavnom koristi za XML i opcije preglednika. Ova klauzula se uglavnom koristi za prikaz rezultata upita u XML formatu ili u pregledniku.
35. Koji će biti najveći broj indeksa po tablici?
Za SQL Server 2008 100 Index može se koristiti kao najveći broj po tablici. 1 Clustered Index i 999 neklasteriranih indeksa po tablici mogu se koristiti u SQL Serveru.
Indeks 1000 može se koristiti kao najveći broj po tablici. 1 Clustered Index i 999 neklasteriranih indeksa po tablici mogu se koristiti u SQL Serveru.
1 Clustered Index i 999 neklasteriranih indeksa po tablici mogu se koristiti u SQL Serveru.
36. Koja je razlika između COMMIT i ROLLBACK?
Svaka naredba između BEGIN i COMMIT postaje postojana u bazi podataka kada se COMMIT izvrši. Svaka naredba između BEGIN i ROOLBACK vraća se u stanje kada je ROLLBACK izvršen.
37. Koja je razlika između tipova varchar i nvarchar?
Varchar i nvarchar su isti, ali jedina je razlika što se nvarhcar može koristiti za pohranjivanje Unicode znakova za više jezika, a također zauzima više prostora u usporedbi s varcharom.
38. Čemu služi @@SPID?
@@SPID vraća ID sesije trenutnog korisničkog procesa.
39. Koja se naredba koristi za rekompilaciju pohranjene procedure tijekom izvođenja?
Pohranjena procedura može se izvršiti uz pomoć ključne riječi RECOMPILE.
Primjer
Exe <SPName> WITH RECOMPILE
Ili možemo uključiti WITHRECOMPILE u samu pohranjenu proceduru.
40. Kako izbrisati duple retke u SQL Serveru?
Duplikati redaka mogu se izbrisati korištenjem značajki CTE i ROW NUMER SQL Servera.
41. Gdje su korisnička imena i lozinke SQL Servera pohranjeni u SQL Serveru?
Korisnička imena i lozinke pohranjeni su u sys.server_principals i sys.sql_logins. Ali lozinke se ne pohranjuju u normalnom tekstu.
42. Koja je razlika između GETDATE i SYSDATETIME?
Oba su ista, ali GETDATE može dati vrijeme do milisekundi, a SYSDATETIME može dati preciznost do nanosekundi. SYSDATE TIME je točnije od GETDATE.
43. Kako se podaci mogu kopirati iz jedne tablice u drugu?
INSERT INTO SELECT
Ova naredba se koristi za umetanje podataka u tablicu koja je već kreirana.
SELECT INTO
Ova naredba se koristi za kreiranje nove tablice, a njena struktura i podaci se mogu kopirati iz postojeće tablice.
44. Što je TABLESAMPLE?
TABLESAMPLE se koristi za izdvajanje uzorka redaka nasumično koji su svi potrebni za aplikaciju. Uzeti uzorci redaka temelje se na postotku redaka.
45. Koja se naredba koristi za korisnički definirane poruke o pogrešci?
RAISEERROR je naredba koja se koristi za generiranje i pokretanje obrade pogreške za danu sesiju. Te korisnički definirane poruke pohranjene su u tablici sys.messages.
46. Što znači XML Datatype?
XML vrsta podataka koristi se za pohranu XML dokumenata u Baza podataka SQL Servera. Stupci i varijable se stvaraju i pohranjuju XML instance u bazu podataka.
47. Što je CDC?
CDC je skraćeno kao Change Data Capture koji se koristi za snimanje podataka koji su nedavno promijenjeni. Ova je značajka prisutna u SQL Serveru 2008.
48. Što je SQL injection?
SQL injection je napad zlonamjernih korisnika u kojem se zlonamjerni kod može umetnuti u nizove koji se mogu proslijediti instanci SQL poslužitelja na analizu i izvršenje. Sve izjave moraju biti provjerene zbog ranjivosti jer izvršava sve sintaktički valjane upite koje primi.
Čak i parametrima mogu manipulirati vješti i iskusni napadači.
49. Koje se metode koriste za zaštitu od napada SQL injekcijom?
Slijede metode koje se koriste za zaštitu od napada SQL injekcijom:
- Koristite parametre za pohranjene procedure
- Filtriranje ulaznih parametara
- Koristite kolekciju parametara s dinamičkim SQL-om
- U sličnoj klauzuli, korisnički izlazni znakovi
50. Što je filtrirani indeks?
Filtrirani indeks koristi se za filtriranje nekih dijelova redaka u tablici kako bi se poboljšala izvedba upita, održavanje indeksa i smanjili troškovi pohrane indeksa. Kada je indeks kreiran s WHERE klauzulom, tada se naziva Filtrirani indeks.
Ova pitanja za intervju također će vam pomoći u vašem životu