50 parimat SQL Serveri intervjuu küsimust ja vastust (2025)
SQL Serveri intervjuu küsimused ja vastused esmakursuslastele
1. Millised on kaks autentimisrežiimi SQL Serveris?
On kaks autentimisrežiimi –
- Windows viis
- Segatud režiim
Režiime saab muuta, valides SQL Serveri konfiguratsiooniatribuutide tööriistamenüü ja valides turvalehe.
👉 Tasuta PDF-i allalaadimine: SQL Serveri intervjuu küsimused ja vastused
2. Mis on SQL Profiler?
SQL Profiler on tööriist, mis võimaldab süsteemiadministraatoril jälgida sündmusi SQL-serveris. Seda kasutatakse peamiselt faili või tabeli iga sündmuse kohta andmete jäädvustamiseks ja salvestamiseks analüüsimiseks.
3. Mis on rekursiivne salvestatud protseduur?
SQL Server toetab rekursiivset salvestatud protseduuri, mis kutsub ise välja. Rekursiivset salvestatud protseduuri võib määratleda kui probleemi lahendamise meetodit, kus lahendus saabub korduvalt. See võib pesitseda kuni 32 tasemel.
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. Millised on kohalike ja globaalsete ajutiste tabelite erinevused?
- Kohalikud ajutised tabelid on ühenduse loomisel nähtavad ja ühenduse sulgemisel kustutatakse.
CREATE TABLE #<tablename>
- Globaalsed ajutised tabelid on nähtavad kõigile kasutajatele ja need kustutatakse, kui selle loonud ühendus suletakse.
CREATE TABLE ##<tablename>
5. Mis on CHECKi piirang?
Tabeli veerule saab rakendada piirangut CHECK, et piirata veergu paigutatavaid väärtusi. Kontrollpiirang on terviklikkuse jõustamiseks.
6. Kas SQL-servereid saab siduda teiste serveritega?
SQL-server saab ühendada mis tahes andmebaasiga, millel on lingi andmiseks OLE-DB pakkuja. Näide: Oracle on OLE-DB pakkuja, millel on link SQL-i serverirühmaga ühenduse loomiseks.
7. Mis on alampäring ja selle omadused?
Alampäring on päring, mille saab pesastada põhipäringu sisse, nagu näiteks Select-, Update-, Insert- või Delete-laused. Seda saab kasutada, kui väljend on lubatud. Alampäringu atribuute saab määratleda kui
- Alampäringul ei tohi olla järjekorda klausli järgi
- Alampäring tuleks paigutada põhipäringu võrdlusoperaatori paremale poole
- Alampäring peaks olema sulgudes, kuna see tuleb enne põhipäringut täita
- Kaasata võib rohkem kui ühe alampäringu
8. Millised on alampäringu tüübid?
Alampäringuid on kolme tüüpi –
- Üherealine alampäring, mis tagastab ainult ühe rea
- Mitmerealine alampäring, mis tagastab mitu rida
- Mitme veeru alampäring, mis tagastab põhipäringule mitu veergu. Selle alampäringu tulemusega käivitatakse põhipäring.
9. Mis on SQL-serveri agent?
SQL Serveri agent mängib olulist rolli SQL-serveri administraatori (DBA) igapäevastes ülesannetes. Serveragendi eesmärk on ülesandeid hõlpsalt rakendada ajakavamootori abil, mis võimaldab meie töödel ajastatud kuupäeval ja kellaajal töötada.
10. Mis on ajastatud ülesanded SQL Serveris?
Ajastatud ülesandeid või töid kasutatakse protsesside automatiseerimiseks, mida saab ajastatud aja jooksul ja korrapäraste intervallidega käivitada. Selline ülesannete ajastamine aitab vähendada inimese sekkumist öösel ja söötmist saab teha kindlal kellaajal. Samuti saab kasutaja tellida ülesandeid, milles see tuleb genereerida.
11. Mis on COALESCE SQL Serveris?
COALESCE kasutatakse argumentide esimese mitte-null-avaldise tagastamiseks. Seda funktsiooni kasutatakse mitte-nulli tagastamiseks argumentide rohkem kui ühest veerust.
Näide -
Select COALESCE(empno, empname, salary) from employee;
12. Kuidas saab SQL Serveri programmeerimises käsitleda erandeid?
Erandeid käsitletakse konstruktsioonide TRY—-CATCH abil ja seda käsitletakse skriptide kirjutamisega TRY plokki ja veakäsitluse CATCH plokki.
13. Mis on funktsiooni FLOOR eesmärk?
FLOOR funktsiooni kasutatakse mittetäisarvulise väärtuse ümardamiseks eelmise väikseima täisarvuni. Näide on toodud
FLOOR(6.7)
Tagastab 6.
14. Kas me saame andmebaasis lukke kontrollida? Kui jah, siis kuidas saame seda lukukontrolli teha?
Jah, me saame andmebaasis lukke kontrollida. Seda saab saavutada, kasutades sisseehitatud salvestatud protseduuri nimega sp_lock.
15. Milleks on funktsiooni SIGN kasu?
Funktsiooni SIGN kasutatakse määramaks, kas määratud arv on positiivne, negatiivne või null. See tagastab +1, -1 või 0.
Näide -
SIGN(-35) returns -1
16. Mis on päästik?
Päästikuid kasutatakse SQL-koodi partii käivitamiseks, kui tabeli suhtes täidetakse sisestamise, värskendamise või kustutamise käske. Päästikud käivituvad või käivitatakse automaatselt, kui andmeid muudetakse. Seda saab sisestada, kustutada ja värskendada automaatselt.
17. Millised on käivitajate tüübid?
Päästikuid on nelja tüüpi ja need on:
- Sisesta
- kustutama
- Värskendused
- Asemel
18. Mis on veerg IDENTITY lisalausetes?
IDENTITY veergu kasutatakse tabeli veergudes, et muuta see veerg automaatseks juurdekasvunumbriks või asendusvõtmeks.
19. Mis on hulgikoopia SQL-is?
Masskopeerimine on tööriist, mida kasutatakse suure hulga andmete kopeerimiseks tabelitest. Seda tööriista kasutatakse suure hulga andmete laadimiseks SQL Serveris.
20. Millist päringut kasutatakse andmebaasi käivitajate loendi saamiseks?
Päring andmebaasis olevate päästikute loendi saamiseks-
Select * from sys.objects where type='tr'
21. Mis vahe on UNIONil ja UNION ALL vahel?
- UNION: Seotud teabe valimiseks kahest tabelist kasutatakse UNION käsku. See sarnaneb käsuga JOIN.
- UNION All: käsk UNION ALL on võrdne käsuga UNION, välja arvatud see, et UNION ALL valib kõik väärtused. See ei eemalda dubleerivaid ridu, vaid hangib kõik read kõikidest tabelitest.
22. Kuidas globaalseid ajutisi tabeleid kujutatakse ja selle ulatus?
Globaalsed ajutised tabelid on tähistatud tähega ## enne tabeli nime. Reguleerimisala on väljaspool seanssi, samas kui kohalikud ajutised tabelid on seansi sees. Seansi ID leiate @@SPID abil.
SQL Serveri intervjuu küsimused ja vastused kogenud inimestele
23. Millised on salvestatud protseduuri ja dünaamilise SQL-i erinevused?
Salvestatud protseduur on lausete kogum, mis salvestatakse kompileeritud kujul. Dünaamiline SQL on lausete kogum, mis koostatakse dünaamiliselt käitusajal ja mida ei salvestata andmebaasi ja see lihtsalt käivitatakse käitamise ajal.
24. Mis on võrdlemine?
Võrdlemine on määratletud sortimisjärjestuse määramiseks tabelis. Sorteerimisjärjekorda on kolme tüüpi –
- Tõstutundlik
- Tõstutundmatu
- Binaarne
25. Kuidas me saame tabelis olevate kirjete arvu?
Tabeli kirjete arvu saamiseks saab kasutada järgmisi päringuid -
Select * from <tablename> Select count(*) from <tablename> Select rows from sysindexes where id=OBJECT_ID(tablename) and indid<2
26. Millist käsku kasutatakse SQL Serveri versiooni hankimiseks?
Select SERVERPROPERTY('productversion')
kasutatakse SQL Serveri versiooni hankimiseks.
27. Mis on käsk UPDATE_STATISTICS?
Käsku UPDATE_STATISTICS kasutatakse tabelite indeksite värskendamiseks, kui indeksites on tehtud palju kustutamisi või muudatusi või hulgikoopiaid.
28. Milleks on SET NOCOUNT ON/OFF lause kasu?
Vaikimisi on NOCOUNT seatud olekusse VÄLJAS ja see tagastab käsu täitmisel mõjutatud kirjete arvu. Kui kasutaja ei soovi kuvada mõjutatud kirjete arvu, saab selle selgesõnaliselt seada ON- (SET NOCOUNT ON).
29. Millist SQL-serveri tabelit kasutatakse salvestatud protseduuriskriptide hoidmiseks?
Sys.SQL_Modules on SQL Serveri tabel, mida kasutatakse salvestatud protseduuri skripti salvestamiseks. Salvestatud protseduuri nimi salvestatakse tabelisse Sys.Procedures.
30. Mis on SQL Serveri võlutabelid?
DML-i toimingute (nt lisamine, kustutamine ja värskendamine) ajal loob SQL Server DML-i toimingute ajal väärtuste hoidmiseks võlutabeleid. Neid võlutabeleid kasutatakse andmetehingute käivitajate sees.
31. Mis vahe on SUBSTR ja CHARINDEX vahel SQL Serveris?
Funktsiooni SUBSTR kasutatakse stringi teatud osa tagastamiseks antud stringis. Kuid funktsioon CHARINDEX annab märgi asukoha antud määratud stringis.
SUBSTRING('Smiley',1,3)
Annab tulemuse kui Smi
CHARINDEX('i', 'Smiley',1)
Annab tulemuseks 3, nagu mina 3-srd stringi asukoht
32. Kuidas saab sisselogimist luua?
Sisselogimise loomiseks saate kasutada järgmist käsku
CREATE LOGIN MyLogin WITH PASSWORD = '123';
33. Mis on operaator ISNULL()?
Funktsiooni ISNULL kasutatakse kontrollimaks, kas antud väärtus on NULL või mitte sql-serveris. See funktsioon võimaldab ka väärtuse asendada NULL-iga.
34. Milleks on FOR-klausli kasu?
FOR-klauslit kasutatakse peamiselt XML ja brauseri valikud. Seda klauslit kasutatakse peamiselt päringutulemuste kuvamiseks XML-vormingus või brauseris.
35. Kui suur on maksimaalne indeksite arv tabeli kohta?
SQL Server 2008 puhul saab tabeli kohta maksimaalse arvuna kasutada indeksit 100. 1 Clustered Index ja 999 rühmitamata indeksit tabeli kohta saab kasutada SQL Serveris.
Tabeli kohta saab maksimaalse arvuna kasutada 1000 indeksit. 1 Clustered Index ja 999 rühmitamata indeksit tabeli kohta saab kasutada SQL Serveris.
1 Clustered Index ja 999 rühmitamata indeksit tabeli kohta saab kasutada SQL Serveris.
36. Mis vahe on COMMIT ja ROLLBACK vahel?
Iga lause BEGIN ja COMMIT vahel muutub COMMITi täitmisel andmebaasi püsivaks. Kõik BEGIN ja ROOLBACKi vahelised avaldused ennistatakse ROLLBACKi käivitamise olekusse.
37. Mis vahe on varchari ja nvarchari tüüpidel?
Varchar ja nvarchar on samad, kuid ainus erinevus on see, et nvarhcari saab kasutada mitme keele Unicode'i märkide salvestamiseks ja see võtab ka varchariga võrreldes rohkem ruumi.
38. Milleks on @@SPID kasu?
@@SPID tagastab praeguse kasutajaprotsessi seansi ID.
39. Millist käsku kasutatakse salvestatud protseduuri tööajal uuesti kompileerimiseks?
Salvestatud protseduuri saab käivitada märksõna RECOMPILE abil.
Näide
Exe <SPName> WITH RECOMPILE
Või võime lisada WITHRECOMPILE salvestatud protseduuri endasse.
40. Kuidas kustutada SQL Serveris dubleerivaid ridu?
Duplikaatridu saab kustutada SQL Serveri funktsioonide CTE ja ROW NUMER abil.
41. Kus on SQL Serveris SQL Serveri kasutajanimed ja paroolid salvestatud?
Kasutajanimed ja paroolid salvestatakse kaustadesse sys.server_principals ja sys.sql_logins. Kuid paroole ei salvestata tavalises tekstis.
42. Mis vahe on GETDATE ja SYSDATETIME vahel?
Mõlemad on samad, kuid GETDATE võib anda aega millisekunditeni ja SYSDATETIME võib anda täpsuse kuni nanosekunditeni. SYSDATE TIME on täpsem kui GETDATE.
43. Kuidas saab andmeid ühest tabelist teise kopeerida?
INSERT INTO SELECT
Seda käsku kasutatakse andmete sisestamiseks juba loodud tabelisse.
SELECT INTO
Seda käsku kasutatakse uue tabeli loomiseks ning selle struktuuri ja andmeid saab olemasolevast tabelist kopeerida.
44. Mis on TABLESAMPLE?
TABLESAMPLE'i kasutatakse, et ekstraheerida juhuslikult valimi ridadest, mis on kõik rakenduse jaoks vajalikud. Võetud näidisridade aluseks on ridade protsent.
45. Millist käsku kasutatakse kasutaja määratud veateadete jaoks?
RAISEERROR on käsk, mida kasutatakse antud seansi veatöötluse genereerimiseks ja käivitamiseks. Need kasutaja määratud sõnumid salvestatakse tabelis sys.messages.
46. Mida tähendab XML-andmetüüp?
XML-andmetüüpi kasutatakse XML-dokumentide salvestamiseks SQL Serveri andmebaas. Luuakse veerud ja muutujad ning salvestatakse XML-eksemplarid andmebaasi.
47. Mis on CDC?
CDC on lühendatud kui Change Data Capture, mida kasutatakse hiljuti muudetud andmete jäädvustamiseks. See funktsioon on SQL Server 2008-s olemas.
48. Mis on SQL-i süstimine?
SQL-i süstimine on pahatahtlike kasutajate rünnak, mille käigus saab pahatahtlikku koodi sisestada stringidesse, mida saab edastada SQL-serveri eksemplarile sõelumiseks ja täitmiseks. Kõiki avaldusi tuleb kontrollida haavatavuste suhtes, kuna see täidab kõik saadud süntaktiliselt kehtivad päringud.
Kvalifitseeritud ja kogenud ründajad saavad manipuleerida isegi parameetritega.
49. Milliseid meetodeid kasutatakse SQL-i süstimise rünnaku eest kaitsmiseks?
SQL-i süstimise rünnaku eest kaitsmiseks kasutatakse järgmisi meetodeid:
- Kasutage salvestatud protseduuride jaoks parameetreid
- Sisendparameetrite filtreerimine
- Kasutage dünaamilise SQL-iga parameetrite kogu
- Sarnases klauslis kasutaja paomärgid
50. Mis on filtreeritud indeks?
Filtreeritud indeksit kasutatakse tabeli teatud osade ridade filtreerimiseks, et parandada päringu jõudlust, indeksi hooldust ja vähendada indeksi salvestuskulusid. Kui indeks luuakse WHERE-klausliga, nimetatakse seda filtreeritud indeksiks.
Need intervjuu küsimused aitavad ka teie viva (suuline)