Die 50 wichtigsten Fragen und Antworten zum SQL Server-Interview (2026)
Fragen und Antworten zum SQL Server-Interview fรผr Studienanfรคnger
1. Welche zwei Authentifizierungsmodi gibt es in SQL Server?
Es gibt zwei Authentifizierungsmodi:
- Windows Model
- Mischform
Modi kรถnnen geรคndert werden, indem Sie das Menรผ โExtrasโ der SQL Server-Konfigurationseigenschaften auswรคhlen und die Seite โSicherheitโ auswรคhlen.
๐Kostenloser PDF-Download: Fragen und Antworten zum SQL Server-Interview
2. Was ist SQL Profiler?
SQL Profiler ist ein Tool, mit dem Systemadministratoren Ereignisse im SQL-Server รผberwachen kรถnnen. Dies wird hauptsรคchlich verwendet, um Daten zu jedem Ereignis einer Datei oder Tabelle zur Analyse zu erfassen und zu speichern.
3. Was ist eine rekursive gespeicherte Prozedur?
SQL Server unterstรผtzt rekursive gespeicherte Prozeduren, die sich selbst aufrufen. Rekursive gespeicherte Prozeduren kรถnnen als eine Methode zur Problemlรถsung definiert werden, bei der die Lรถsung wiederholt gefunden wird. Es kรถnnen bis zu 32 Ebenen verschachtelt werden.
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. Was sind die Unterschiede zwischen lokalen und globalen temporรคren Tabellen?
- Lokale temporรคre Tabellen sind sichtbar, wenn eine Verbindung besteht, und werden gelรถscht, wenn die Verbindung geschlossen wird.
CREATE TABLE #<tablename>
- Globale temporรคre Tabellen sind fรผr alle Benutzer sichtbar und werden gelรถscht, wenn die Verbindung, die sie erstellt hat, geschlossen wird.
CREATE TABLE ##<tablename>
5. Was ist eine CHECK-Einschrรคnkung?
Eine CHECK-Einschrรคnkung kann auf eine Spalte in einer Tabelle angewendet werden, um die Werte zu begrenzen, die in einer Spalte platziert werden kรถnnen. Die Prรผfeinschrรคnkung dient der Durchsetzung der Integritรคt.
6. Kรถnnen SQL-Server mit anderen Servern verknรผpft werden?
SQL Server kann mit jeder Datenbank verbunden werden, die รผber einen OLE-DB-Anbieter verfรผgt, um einen Link bereitzustellen. Beispiel: Oracle verfรผgt รผber einen OLE-DB-Anbieter, der รผber eine Verbindung zur SQL-Servergruppe verfรผgt.
7. Was ist eine Unterabfrage und ihre Eigenschaften?
Eine Unterabfrage ist eine Abfrage, die in einer Hauptabfrage wie Select-, Update-, Insert- oder Delete-Anweisungen verschachtelt werden kann. Dies kann verwendet werden, wenn Ausdruck zulรคssig ist. Eigenschaften einer Unterabfrage kรถnnen definiert werden als:
- Eine Unterabfrage sollte keine Order-by-Klausel enthalten
- Eine Unterabfrage sollte auf der rechten Seite des Vergleichsoperators der Hauptabfrage platziert werden
- Eine Unterabfrage sollte in Klammern eingeschlossen werden, da sie zuerst vor der Hauptabfrage ausgefรผhrt werden muss
- Es kann mehr als eine Unterabfrage enthalten sein
8. Welche Arten von Unterabfragen gibt es?
Es gibt drei Arten von Unterabfragen:
- Einzelzeilen-Unterabfrage, die nur eine Zeile zurรผckgibt
- Unterabfrage mit mehreren Zeilen, die mehrere Zeilen zurรผckgibt
- Unterabfrage mit mehreren Spalten, die mehrere Spalten an die Hauptabfrage zurรผckgibt. Mit diesem Ergebnis der Unterabfrage wird die Hauptabfrage ausgefรผhrt.
9. Was ist ein SQL Server-Agent?
Der SQL Server-Agent spielt eine wichtige Rolle bei den tรคglichen Aufgaben des SQL Server-Administrators (DBA). Der Zweck des Serveragenten besteht darin, die Aufgaben einfach mit der Scheduler-Engine zu implementieren, die es unseren Jobs ermรถglicht, zum geplanten Datum und zur geplanten Uhrzeit ausgefรผhrt zu werden.
10. Was sind geplante Aufgaben in SQL Server?
Geplante Aufgaben oder Jobs werden zur Automatisierung von Prozessen verwendet, die zu einem geplanten Zeitpunkt in regelmรครigen Abstรคnden ausgefรผhrt werden kรถnnen. Diese Aufgabenplanung trรคgt dazu bei, menschliche Eingriffe wรคhrend der Nacht zu reduzieren und die Fรผtterung kann zu einer bestimmten Zeit erfolgen. Der Benutzer kann auch die Aufgaben anordnen, in denen es generiert werden muss.
11. Was ist COALESCE in SQL Server?
COALESCE wird verwendet, um den ersten Nicht-Null-Ausdruck innerhalb der Argumente zurรผckzugeben. Diese Funktion wird verwendet, um aus mehr als einer Spalte in den Argumenten einen Wert ungleich Null zurรผckzugeben.
Beispiel -
Select COALESCE(empno, empname, salary) from employee;
12. Wie kรถnnen Ausnahmen in der SQL Server-Programmierung behandelt werden?
Ausnahmen werden mit TRY--CATCH-Konstrukten behandelt und durch Schreiben von Skripten im TRY-Block und Fehlerbehandlung im CATCH-Block behandelt.
13. Was ist der Zweck der FLOOR-Funktion?
Die FLOOR-Funktion wird verwendet, um einen nicht ganzzahligen Wert auf die vorherige kleinste Ganzzahl aufzurunden. Es wird ein Beispiel gegeben
FLOOR(6.7)
Rรผckgabe 6.
14. Kรถnnen wir Sperren in der Datenbank รผberprรผfen? Wenn ja, wie kรถnnen wir diese Sperrprรผfung durchfรผhren?
Ja, wir kรถnnen Sperren in der Datenbank รผberprรผfen. Dies kann durch die Verwendung einer integrierten gespeicherten Prozedur namens sp_lock erreicht werden.
15. Wozu dient die SIGN-Funktion?
Mit der SIGN-Funktion wird ermittelt, ob die angegebene Zahl positiv, negativ oder Null ist. Dies gibt +1, -1 oder 0 zurรผck.
Beispiel -
SIGN(-35) returns -1
16. Was ist ein Auslรถser?
Trigger werden verwendet, um einen SQL-Codestapel auszufรผhren, wenn Einfรผge-, Aktualisierungs- oder Lรถschbefehle fรผr eine Tabelle ausgefรผhrt werden. Trigger werden automatisch ausgelรถst oder ausgefรผhrt, wenn die Daten geรคndert werden. Sie kรถnnen bei Einfรผge-, Lรถsch- und Aktualisierungsvorgรคngen automatisch ausgefรผhrt werden.
17. Welche Arten von Auslรถsern gibt es?
Es gibt vier Arten von Auslรถsern:
- Insert
- Lรถschen
- Update
- Anstelle von
18. Was ist eine IDENTITY-Spalte in Einfรผgeanweisungen?
Die IDENTITY-Spalte wird in Tabellenspalten verwendet, um diese Spalte als automatisch inkrementelle Nummer oder als Ersatzschlรผssel zu erstellen.
19. Was ist Bulkcopy in SQL?
Bulkcopy ist ein Tool zum Kopieren groรer Datenmengen aus Tabellen. Dieses Tool wird zum Laden groรer Datenmengen in SQL Server verwendet.
20. Welche Abfrage wird verwendet, um die Liste der Auslรถser in einer Datenbank abzurufen?
Abfrage zum Abrufen der Liste der Trigger in der Datenbank.
Select * from sys.objects where type='tr'
21. Was ist der Unterschied zwischen UNION und UNION ALL?
- UNION: Um verwandte Informationen aus zwei Tabellen auszuwรคhlen, wird der UNION-Befehl verwendet. Es รคhnelt dem JOIN-Befehl.
- UNION All: Der Befehl UNION ALL entspricht dem Befehl UNION, auรer dass UNION ALL alle Werte auswรคhlt. Es werden keine doppelten Zeilen entfernt, sondern alle Zeilen aus allen Tabellen abgerufen.
22. Wie werden globale temporรคre Tabellen dargestellt und welchen Umfang haben sie?
Globale temporรคre Tabellen werden mit ## vor dem Tabellennamen dargestellt. Der Geltungsbereich liegt auรerhalb der Sitzung, wรคhrend sich lokale temporรคre Tabellen innerhalb der Sitzung befinden. Die Sitzungs-ID kann mit @@SPID ermittelt werden.
Fragen und Antworten zum SQL Server-Interview fรผr Erfahrene
23. Was sind die Unterschiede zwischen Stored Procedure und dynamischem SQL?
Eine gespeicherte Prozedur ist eine Reihe von Anweisungen, die in kompilierter Form gespeichert werden. Dynamisches SQL ist eine Reihe von Anweisungen, die zur Laufzeit dynamisch erstellt werden und nicht in einer Datenbank gespeichert werden, sondern einfach zur Laufzeit ausgefรผhrt werden.
24. Was ist Kollation?
Die Sortierung wird definiert, um die Sortierreihenfolge in einer Tabelle anzugeben. Es gibt drei Arten der Sortierreihenfolge:
- Groร- / Kleinschreibung beachten
- Groร-/Kleinschreibung nicht beachten
- Binรคr
25. Wie kรถnnen wir die Anzahl der Datensรคtze in einer Tabelle ermitteln?
Die folgenden Abfragen kรถnnen verwendet werden, um die Anzahl der Datensรคtze in einer Tabelle abzurufen:
Select * from <tablename> Select count(*) from <tablename> Select rows from sysindexes where id=OBJECT_ID(tablename) and indid<2
26. Welcher Befehl wird verwendet, um die Version von SQL Server abzurufen?
Select SERVERPROPERTY('productversion')
wird verwendet, um die Version von SQL Server abzurufen.
27. Was ist der UPDATE_STATISTICS-Befehl?
Der Befehl UPDATE_STATISTICS wird verwendet, um die Indizes der Tabellen zu aktualisieren, wenn eine groรe Anzahl von Lรถschungen oder รnderungen oder Massenkopien in Indizes erfolgt sind.
28. Wozu dient die SET NOCOUNT ON/OFF-Anweisung?
Standardmรครig ist NOCOUNT auf OFF gesetzt und gibt bei jeder Ausfรผhrung des Befehls die Anzahl der betroffenen Datensรคtze zurรผck. Wenn der Benutzer die Anzahl der betroffenen Datensรคtze nicht anzeigen mรถchte, kann dies explizit auf ON- (SET NOCOUNT ON) gesetzt werden.
29. Welche SQL Server-Tabelle wird zum Speichern der gespeicherten Prozedurskripte verwendet?
Sys.SQL_Modules ist eine SQL Server-Tabelle, die zum Speichern des Skripts der gespeicherten Prozedur verwendet wird. Der Name der gespeicherten Prozedur wird in der Tabelle โSys.Proceduresโ gespeichert.
30. Was sind Magic Tables in SQL Server?
Wรคhrend DML-Operationen wie Einfรผgen, Lรถschen und Aktualisieren erstellt SQL Server Magic Tables, um die Werte wรคhrend der DML-Operationen zu speichern. Diese Magic Tables werden innerhalb der Trigger fรผr Datentransaktionen verwendet.
31. Was ist der Unterschied zwischen SUBSTR und CHARINDEX im SQL Server?
Die SUBSTR-Funktion wird verwendet, um einen bestimmten Teil einer Zeichenfolge in einer bestimmten Zeichenfolge zurรผckzugeben. Die CHARINDEX-Funktion gibt jedoch die Zeichenposition in einer bestimmten angegebenen Zeichenfolge an.
SUBSTRING('Smiley',1,3)
Gibt das Ergebnis als Smi aus
CHARINDEX('i', 'Smiley',1)
Ergibt 3 als Ergebnis, da I in 3 erscheintrd Position der Saite
32. Wie kann man ein Login erstellen?
Mit dem folgenden Befehl kรถnnen Sie einen Login erstellen
CREATE LOGIN MyLogin WITH PASSWORD = '123';
33. Was ist der ISNULL()-Operator?
Die Funktion ISNULL wird verwendet, um zu รผberprรผfen, ob der angegebene Wert NULL ist oder nicht. Diese Funktion bietet auch die Mรถglichkeit, einen Wert durch NULL zu ersetzen.
34. Wozu dient die FOR-Klausel?
Die FOR-Klausel wird hauptsรคchlich fรผr verwendet XML und Browseroptionen. Diese Klausel wird hauptsรคchlich verwendet, um die Abfrageergebnisse im XML-Format oder im Browser anzuzeigen.
35. Wie hoch ist die maximale Anzahl an Indizes pro Tabelle?
Fรผr SQL Server 2008 kann der Index 100 als maximale Anzahl pro Tabelle verwendet werden. 1 ClusterIm SQL Server kรถnnen 999 gruppierte Indizes und XNUMX nicht gruppierte Indizes pro Tabelle verwendet werden.
Als maximale Anzahl pro Tabelle kann der Index 1000 verwendet werden. 1 ClusterIm SQL Server kรถnnen 999 gruppierte Indizes und XNUMX nicht gruppierte Indizes pro Tabelle verwendet werden.
1 ClusterIm SQL Server kรถnnen 999 gruppierte Indizes und XNUMX nicht gruppierte Indizes pro Tabelle verwendet werden.
36. Was ist der Unterschied zwischen COMMIT und ROLLBACK?
Jede Anweisung zwischen BEGIN und COMMIT wird fรผr die Datenbank persistent, wenn COMMIT ausgefรผhrt wird. Jede Anweisung zwischen BEGIN und ROOLBACK wird auf den Zustand zurรผckgesetzt, in dem ROLLBACK ausgefรผhrt wurde.
37. Was ist der Unterschied zwischen den Typen varchar und nvarchar?
Varchar und nvarchar sind identisch, der einzige Unterschied besteht jedoch darin, dass nvarhcar zum Speichern von Unicode-Zeichen fรผr mehrere Sprachen verwendet werden kann und im Vergleich zu varchar auch mehr Platz benรถtigt.
38. Wozu dient @@SPID?
Ein @@SPID gibt die Sitzungs-ID des aktuellen Benutzerprozesses zurรผck.
39. Mit welchem โโBefehl wird die gespeicherte Prozedur zur Laufzeit neu kompiliert?
Gespeicherte Prozeduren kรถnnen mit Hilfe des Schlรผsselworts RECOMPILE ausgefรผhrt werden.
Beispiel
Exe <SPName> WITH RECOMPILE
Oder wir kรถnnen WITHRECOMPILE in die gespeicherte Prozedur selbst einschlieรen.
40. Wie lรถsche ich doppelte Zeilen in SQL Server?
Doppelte Zeilen kรถnnen mit der CTE- und ROW NUMER-Funktion von SQL Server gelรถscht werden.
41. Wo werden SQL Server-Benutzernamen und Passwรถrter in SQL Server gespeichert?
Benutzernamen und Passwรถrter werden in sys.server_principals und sys.sql_logins gespeichert. Passwรถrter werden jedoch nicht in normalem Text gespeichert.
42. Was ist der Unterschied zwischen GETDATE und SYSDATETIME?
Beide sind gleich, aber GETDATE kann eine Zeit bis zu Millisekunden und SYSDATETIME eine Genauigkeit bis zu Nanosekunden liefern. SYSDATE TIME ist genauer als GETDATE.
43. Wie kรถnnen Daten von einer Tabelle in eine andere Tabelle kopiert werden?
INSERT INTO SELECT
Mit diesem Befehl werden Daten in eine bereits erstellte Tabelle eingefรผgt.
SELECT INTO
Mit diesem Befehl wird eine neue Tabelle erstellt, deren Struktur und Daten aus einer vorhandenen Tabelle kopiert werden kรถnnen.
44. Was ist TABLESAMPLE?
TABLESAMPLE wird verwendet, um zu extracEs wird eine zufรคllige Stichprobe von Zeilen gezogen, die alle fรผr die Anwendung notwendig sind. Die Auswahl der Zeilen in der Stichprobe basiert auf dem prozentualen Anteil der Zeilen.
45. Welcher Befehl wird fรผr benutzerdefinierte Fehlermeldungen verwendet?
RAISEERROR ist der Befehl, der zum Generieren und Einleiten der Fehlerverarbeitung fรผr eine bestimmte Sitzung verwendet wird. Diese benutzerdefinierten Nachrichten werden in der Tabelle sys.messages gespeichert.
46. โโWas versteht man unter XML-Datentyp?
Der XML-Datentyp wird zum Speichern von XML-Dokumenten im verwendet SQL Server-Datenbank. Spalten und Variablen werden erstellt und speichern XML-Instanzen in der Datenbank.
47. Was ist CDC?
CDC wird als Change Data Capture abgekรผrzt und dient zur Erfassung der Daten, die kรผrzlich geรคndert wurden. Diese Funktion ist in SQL Server 2008 vorhanden.
48. Was ist SQL-Injection?
SQL-Injection ist ein Angriff bรถswilliger Benutzer, bei dem Schadcode in Zeichenfolgen eingefรผgt werden kann, die zur Analyse und Ausfรผhrung an eine Instanz des SQL-Servers รผbergeben werden kรถnnen. Alle Anweisungen mรผssen auf Schwachstellen รผberprรผft werden, da alle syntaktisch gรผltigen Abfragen ausgefรผhrt werden, die sie erhalten.
Sogar Parameter kรถnnen von geschickten und erfahrenen Angreifern manipuliert werden.
49. Welche Methoden werden zum Schutz vor SQL-Injection-Angriffen verwendet?
Die folgenden Methoden dienen zum Schutz vor SQL-Injection-Angriffen:
- Verwenden Sie Parameter fรผr gespeicherte Prozeduren
- Eingabeparameter filtern
- Verwenden Sie die Parametersammlung mit Dynamic SQL
- In der Like-Klausel werden Benutzer-Escape-Zeichen verwendet
50. Was ist ein gefilterter Index?
Der gefilterte Index wird verwendet, um einen Teil der Zeilen in einer Tabelle zu filtern, um die Abfrageleistung und Indexpflege zu verbessern und die Indexspeicherkosten zu senken. Wenn der Index mit der WHERE-Klausel erstellt wird, wird er als gefilterter Index bezeichnet.
Diese Interviewfragen helfen auch bei Ihrer mรผndlichen Prรผfung

