Top 50 vragen en antwoorden over SQL Server-interviews (2025)
SQL Server-interviewvragen en -antwoorden voor eerstejaarsstudenten
1. Wat zijn de twee authenticatiemodi in SQL Server?
Er zijn twee authenticatiemodi –
- Windows Mode
- Gemengde modus
Modi kunnen worden gewijzigd door het menu Extra van de SQL Server-configuratie-eigenschappen te selecteren en de beveiligingspagina te kiezen.
👉 Gratis pdf-download: vragen en antwoorden over SQL Server-interviews
2. Wat is SQL Profiler?
SQL Profiler is een tool waarmee de systeembeheerder gebeurtenissen op de SQL-server kan monitoren. Dit wordt voornamelijk gebruikt om gegevens over elke gebeurtenis in een bestand of tabel vast te leggen en op te slaan voor analyse.
3. Wat is een recursieve opgeslagen procedure?
SQL Server ondersteunt recursieve opgeslagen procedures die zichzelf aanroepen. Recursieve opgeslagen procedure kan worden gedefinieerd als een methode voor het oplossen van problemen waarbij de oplossing herhaaldelijk wordt gevonden. Het kan maximaal 32 niveaus nesten.
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. Wat zijn de verschillen tussen lokale en globale tijdelijke tabellen?
- Lokale tijdelijke tabellen zijn zichtbaar als er een verbinding is, en worden verwijderd als de verbinding wordt verbroken.
CREATE TABLE #<tablename>
- Globale tijdelijke tabellen zijn zichtbaar voor alle gebruikers en worden verwijderd wanneer de verbinding die deze heeft gemaakt, wordt gesloten.
CREATE TABLE ##<tablename>
5. Wat is CHECK-beperking?
Een CHECK-beperking kan worden toegepast op een kolom in een tabel om de waarden te beperken die in een kolom kunnen worden geplaatst. Controlebeperking is bedoeld om integriteit af te dwingen.
6. Kunnen SQL-servers aan andere servers worden gekoppeld?
SQL-server kan worden verbonden met elke database die een OLE-DB-provider heeft om een link te geven. Voorbeeld: Oracle heeft een OLE-DB-provider die een link heeft om verbinding te maken met de SQL-servergroep.
7. Wat is een subquery en de eigenschappen ervan?
Een subquery is een query die kan worden genest in een hoofdquery, zoals Select-, Update-, Insert- of Delete-instructies. Dit kan worden gebruikt als expressie is toegestaan. Eigenschappen van subquery kunnen worden gedefinieerd als
- Een subquery mag geen order-per-clausule bevatten
- Een subquery moet aan de rechterkant van de vergelijkingsoperator van de hoofdquery worden geplaatst
- Een subquery moet tussen haakjes worden geplaatst, omdat deze eerst vóór de hoofdquery moet worden uitgevoerd
- Er kunnen meer dan één subquery worden opgenomen
8. Wat zijn de soorten subquery's?
Er zijn drie soorten subquery’s:
- Subquery met één rij die slechts één rij retourneert
- Subquery met meerdere rijen die meerdere rijen retourneert
- Subquery met meerdere kolommen die meerdere kolommen retourneert naar de hoofdquery. Met dat subqueryresultaat wordt de hoofdquery uitgevoerd.
9. Wat is SQL-serveragent?
De SQL Server-agent speelt een cruciale rol in de dagelijkse taken van de SQL-serverbeheerder (DBA). Het doel van de serveragent is om de taken eenvoudig te implementeren met de planner-engine, waardoor onze taken op de geplande datum en tijd kunnen worden uitgevoerd.
10. Wat zijn geplande taken in SQL Server?
Geplande taken of taken worden gebruikt om processen te automatiseren die met regelmatige tussenpozen op een gepland tijdstip kunnen worden uitgevoerd. Deze planning van taken helpt de menselijke tussenkomst tijdens de nacht te verminderen en het voeren kan op een bepaald tijdstip worden gedaan. De gebruiker kan ook de taken bestellen waarin het moet worden gegenereerd.
11. Wat is COALESCE in SQL Server?
COALESCE wordt gebruikt om de eerste niet-null-expressie binnen de argumenten te retourneren. Deze functie wordt gebruikt om een niet-null terug te geven uit meer dan één kolom in de argumenten.
Voorbeeld -
Select COALESCE(empno, empname, salary) from employee;
12. Hoe kunnen uitzonderingen worden afgehandeld in SQL Server-programmering?
Uitzonderingen worden afgehandeld met behulp van TRY--CATCH-constructies en worden afgehandeld door scripts in het TRY-blok te schrijven en foutafhandeling in het CATCH-blok.
13. Wat is het doel van de FLOOR-functie?
De FLOOR-functie wordt gebruikt om een niet-gehele waarde naar boven af te ronden naar het voorgaande kleinste gehele getal. Er wordt een voorbeeld gegeven
FLOOR(6.7)
Retouren 6.
14. Kunnen we sloten in de database controleren? Zo ja, hoe kunnen we deze slotcontrole uitvoeren?
Ja, we kunnen sloten in de database controleren. Dit kan worden bereikt door gebruik te maken van de ingebouwde opgeslagen procedure genaamd sp_lock.
15. Wat is het gebruik van de SIGN-functie?
De SIGN-functie wordt gebruikt om te bepalen of het opgegeven getal positief, negatief of nul is. Dit levert +1,-1 of 0 op.
Voorbeeld -
SIGN(-35) returns -1
16. Wat is een trigger?
Triggers worden gebruikt om een batch SQL-code uit te voeren wanneer insert-, update- of delete-opdrachten worden uitgevoerd op een tabel. Triggers worden automatisch geactiveerd of uitgevoerd wanneer de gegevens worden gewijzigd. Het kan automatisch worden uitgevoerd bij insert-, delete- en update-bewerkingen.
17. Wat zijn de soorten triggers?
Er zijn vier soorten triggers en deze zijn:
- Invoegen
- Verwijdering
- bijwerken
- In plaats van
18. Wat is een IDENTITY-kolom in insert-instructies?
De IDENTITY-kolom wordt gebruikt in tabelkolommen om van die kolom een automatisch oplopend nummer of een surrogaatsleutel te maken.
19. Wat is bulkcopy in SQL?
Bulkcopy is een hulpmiddel dat wordt gebruikt om grote hoeveelheden gegevens uit tabellen te kopiëren. Deze tool wordt gebruikt om grote hoeveelheden gegevens in SQL Server te laden.
20. Welke zoekopdracht wordt gebruikt om de lijst met triggers in een database te verkrijgen?
Query om de lijst met triggers in de database op te halen-
Select * from sys.objects where type='tr'
21. Wat is het verschil tussen UNION en UNION ALL?
- UNION: Om gerelateerde informatie uit twee tabellen te selecteren, wordt het UNION-commando gebruikt. Het is vergelijkbaar met het JOIN-commando.
- UNION All: De opdracht UNION ALL is gelijk aan de opdracht UNION, behalve dat UNION ALL alle waarden selecteert. Het verwijdert geen dubbele rijen, maar haalt in plaats daarvan alle rijen uit alle tabellen op.
22. Hoe worden mondiale tijdelijke tabellen weergegeven en wat is de reikwijdte ervan?
Globale tijdelijke tabellen worden weergegeven met ## vóór de tabelnaam. Het bereik ligt buiten de sessie, terwijl lokale tijdelijke tabellen zich binnen de sessie bevinden. Sessie-ID kunt u vinden met @@SPID.
SQL Server-interviewvragen en antwoorden voor ervaren
23. Wat zijn de verschillen tussen Stored Procedure en de dynamische SQL?
Opgeslagen procedure is een reeks instructies die in gecompileerde vorm worden opgeslagen. Dynamische SQL is een reeks instructies die tijdens runtime dynamisch worden opgebouwd en die niet in een database worden opgeslagen en eenvoudigweg tijdens runtime worden uitgevoerd.
24. Wat is sorteren?
Sortering wordt gedefinieerd om de sorteervolgorde in een tabel op te geven. Er zijn drie soorten sorteervolgorde:
- Hoofdlettergevoelig
- Hoofdletterongevoelig
- binair
25. Hoe kunnen we het aantal records in een tabel tellen?
Hieronder staan de query's die kunnen worden gebruikt om het aantal records in een tabel te verkrijgen:
Select * from <tablename> Select count(*) from <tablename> Select rows from sysindexes where id=OBJECT_ID(tablename) and indid<2
26. Wat is het commando dat wordt gebruikt om de versie van SQL Server op te halen?
Select SERVERPROPERTY('productversion')
wordt gebruikt om de versie van SQL Server op te halen.
27. Wat is de opdracht UPDATE_STATISTICS?
De opdracht UPDATE_STATISTICS wordt gebruikt om de indexen in de tabellen bij te werken wanneer er een groot aantal verwijderingen of wijzigingen is of er bulkkopieën in de indexen hebben plaatsgevonden.
28. Wat is het nut van de instructie SET NOCOUNT ON/OFF?
Standaard is NOCOUNT ingesteld op OFF en wordt het aantal records geretourneerd dat is beïnvloed wanneer de opdracht wordt uitgevoerd. Als de gebruiker het aantal getroffen records niet wil weergeven, kan dit expliciet worden ingesteld op ON- (SET NOCOUNT ON).
29. Welke SQL-servertabel wordt gebruikt om de opgeslagen procedurescripts te bewaren?
Sys.SQL_Modules is een SQL Server-tabel die wordt gebruikt om het script van de opgeslagen procedure op te slaan. De naam van de opgeslagen procedure wordt opgeslagen in de tabel met de naam Sys.Procedures.
30. Wat zijn magische tabellen in SQL Server?
Tijdens DML-bewerkingen zoals Insert, Delete en Update, maakt SQL Server magische tabellen om de waarden vast te houden tijdens de DML-bewerkingen. Deze magische tabellen worden gebruikt in de triggers voor datatransacties.
31. Wat is het verschil tussen SUBSTR en CHARINDEX in de SQL Server?
De functie SUBSTR wordt gebruikt om een specifiek gedeelte van de tekenreeks in een bepaalde tekenreeks te retourneren. Maar de CHARINDEX-functie geeft de tekenpositie in een bepaalde opgegeven tekenreeks.
SUBSTRING('Smiley',1,3)
Geeft resultaat als Smi
CHARINDEX('i', 'Smiley',1)
Geeft 3 als resultaat zoals I verschijnt in 3rd positie van de string
32. Hoe kunt u een login aanmaken?
U kunt de volgende opdracht gebruiken om een login aan te maken
CREATE LOGIN MyLogin WITH PASSWORD = '123';
33. Wat is de ISNULL()-operator?
De ISNULL-functie wordt gebruikt om te controleren of de opgegeven waarde NULL is of niet NULL op de SQL-server. Deze functie biedt ook de mogelijkheid om een waarde te vervangen door NULL.
34. Wat is het nut van de FOR-clausule?
De FOR-clausule wordt voornamelijk gebruikt voor XML en browseropties. Deze clausule wordt voornamelijk gebruikt om de queryresultaten in XML-formaat of in een browser weer te geven.
35. Wat is het maximale aantal indexen per tafel?
Voor SQL Server 2008 kan 100 Index worden gebruikt als maximaal aantal per tabel. 1 Clustered Index en 999 niet-geclusterde indexen per tabel kunnen worden gebruikt in SQL Server.
1000 Index kan worden gebruikt als maximaal aantal per tafel. 1 Clustered Index en 999 niet-geclusterde indexen per tabel kunnen worden gebruikt in SQL Server.
1 Clustered Index en 999 niet-geclusterde indexen per tabel kunnen worden gebruikt in SQL Server.
36. Wat is het verschil tussen COMMIT en ROLLBACK?
Elke instructie tussen BEGIN en COMMIT wordt persistent voor de database wanneer de COMMIT wordt uitgevoerd. Elke instructie tussen BEGIN en ROOLBACK wordt teruggezet naar de staat waarin de ROLLBACK werd uitgevoerd.
37. Wat is het verschil tussen de typen varchar en nvarchar?
Varchar en nvarchar zijn hetzelfde, maar het enige verschil is dat nvarhcar kan worden gebruikt om Unicode-tekens voor meerdere talen op te slaan en dat het ook meer ruimte in beslag neemt in vergelijking met varchar.
38. Wat is het nut van @@SPID?
Een @@SPID retourneert de sessie-ID van het huidige gebruikersproces.
39. Wat is het commando dat wordt gebruikt om de opgeslagen procedure tijdens runtime opnieuw te compileren?
Opgeslagen procedure kan worden uitgevoerd met behulp van het trefwoord RECOMPILE.
Voorbeeld
Exe <SPName> WITH RECOMPILE
Of we kunnen WITHRECOMPILE opnemen in de opgeslagen procedure zelf.
40. Hoe verwijder ik dubbele rijen in SQL Server?
Dubbele rijen kunnen worden verwijderd met behulp van de CTE- en ROW NUMER-functie van SQL Server.
41. Waar worden SQL Server-gebruikersnamen en -wachtwoorden opgeslagen in SQL Server?
Gebruikersnamen en wachtwoorden worden opgeslagen in sys.server_principals en sys.sql_logins. Maar wachtwoorden worden niet in normale tekst opgeslagen.
42. Wat is het verschil tussen GETDATE en SYSDATETIME?
Beide zijn hetzelfde, maar GETDATE kan tijd geven tot milliseconden en SYSDATETIME kan precisie geven tot nanoseconden. SYSDATE TIME is nauwkeuriger dan GETDATE.
43. Hoe kunnen gegevens van de ene tabel naar de andere tabel worden gekopieerd?
INSERT INTO SELECT
Deze opdracht wordt gebruikt om gegevens in te voegen in een tabel die al is gemaakt.
SELECT INTO
Deze opdracht wordt gebruikt om een nieuwe tabel te maken en de structuur en gegevens ervan kunnen uit een bestaande tabel worden gekopieerd.
44. Wat is TABLESAMPLE?
TABLESAMPLE wordt gebruikt om willekeurig een aantal rijen te extraheren die allemaal nodig zijn voor de toepassing. De genomen voorbeeldrijen zijn gebaseerd op het percentage rijen.
45. Welk commando wordt gebruikt voor door de gebruiker gedefinieerde foutmeldingen?
RAISEERROR is de opdracht die wordt gebruikt voor het genereren en initiëren van foutverwerking voor een bepaalde sessie. Deze door de gebruiker gedefinieerde berichten worden opgeslagen in de tabel sys.messages.
46. Wat bedoelen we met XML-gegevenstype?
Het XML-gegevenstype wordt gebruikt om XML-documenten op te slaan in de SQL Server database. Er worden kolommen en variabelen gemaakt en XML-instanties worden in de database opgeslagen.
47. Wat is CDC?
CDC wordt afgekort als Change Data Capture en wordt gebruikt om de gegevens vast te leggen die recentelijk zijn gewijzigd. Deze functie is aanwezig in SQL Server 2008.
48. Wat is SQL-injectie?
SQL-injectie is een aanval door kwaadwillende gebruikers waarbij kwaadaardige code kan worden ingevoegd in tekenreeksen die kunnen worden doorgegeven aan een exemplaar van de SQL-server voor parsering en uitvoering. Alle instructies moeten worden gecontroleerd op kwetsbaarheden, aangezien alle syntactisch geldige query's worden uitgevoerd die worden ontvangen.
Zelfs parameters kunnen worden gemanipuleerd door ervaren en ervaren aanvallers.
49. Wat zijn de methoden die worden gebruikt om te beschermen tegen SQL-injectieaanvallen?
Hieronder staan de methoden die worden gebruikt ter bescherming tegen SQL-injectieaanvallen:
- Gebruik parameters voor opgeslagen procedures
- Invoerparameters filteren
- Gebruik parameterverzameling met dynamische SQL
- In een soortgelijke clausule kunnen gebruikers escape-tekens gebruiken
50. Wat is gefilterde index?
Filtered Index wordt gebruikt om een deel van de rijen in een tabel te filteren om de queryprestaties en het indexonderhoud te verbeteren en de indexopslagkosten te verlagen. Wanneer de index wordt gemaakt met de WHERE-clausule, wordt deze Gefilterde Index genoemd.
Deze interviewvragen zullen ook helpen bij je viva (oralen)