Top 50 SQL Server sollicitatievragen & Antwoorden

Anonim

Download PDF

1. Wat zijn de twee verificatiemodi in SQL Server?

Er zijn twee authenticatiemodi -

  • Windows-modus
  • Gemengde modus

Modi kunnen worden gewijzigd door het menu Tools van SQL Server-configuratie-eigenschappen te selecteren en de beveiligingspagina te kiezen.

2. Wat is SQL Profiler?

SQL Profiler is een tool waarmee de systeembeheerder gebeurtenissen in de SQL-server kan volgen. Dit wordt voornamelijk gebruikt om gegevens over elke gebeurtenis van een bestand of een tabel vast te leggen en op te slaan voor analyse.

3. Wat is een recursieve opgeslagen procedure?

SQL Server ondersteunt recursieve opgeslagen procedure die zichzelf aanroept. Recursieve opgeslagen procedure kan worden gedefinieerd als een methode voor het oplossen van problemen waarbij de oplossing herhaaldelijk wordt bereikt. Het kan tot 32 niveaus nesten.

CREATE PROCEDURE [dbo].[Fact](@Number Integer,@RetVal Integer OUTPUT)ASDECLARE @In IntegerDECLARE @Out IntegerIF @Number != 1BEGINSELECT @In = @Number - 1EXEC Fact @In, @Out OUTPUT - Same stored procedure has been called again(Recursively)SELECT @RetVal = @Number * @OutENDELSEBEGINSELECT @RetVal = 1ENDRETURNGO

4. Wat zijn de verschillen tussen lokale en globale tijdelijke tabellen?

  • Lokale tijdelijke tabellen zijn zichtbaar wanneer er een verbinding is en worden verwijderd wanneer de verbinding wordt verbroken.
CREATE TABLE #
  • Globale tijdelijke tabellen zijn zichtbaar voor alle gebruikers en worden verwijderd wanneer de verbinding die deze heeft gemaakt, wordt gesloten.
CREATE TABLE ##

5. Wat is een 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. Controle beperking is om integriteit af te dwingen.

6. Kunnen SQL-servers worden gekoppeld aan andere servers?

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 zijn eigenschappen?

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 hebben
  • Een subquery moet aan de rechterkant van de vergelijkingsoperator van de hoofdquery worden geplaatst
  • Een subquery moet tussen haakjes worden geplaatst omdat deze eerst moet worden uitgevoerd vóór de hoofdquery
  • Er kunnen meerdere subquery's 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 naar de hoofdquery retourneert. Met dat subqueryresultaat wordt de hoofdquery uitgevoerd.

9. Wat is een SQL-serveragent?

De SQL Server-agent speelt een cruciale rol in de dagelijkse taken van SQL Server-beheerder (DBA). Het doel van de serveragent is om de taken eenvoudig te implementeren met de planner-engine waarmee onze taken op een 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 taakplanning helpt om menselijke tussenkomst 's nachts te verminderen en voer kan op een bepaald tijdstip worden gedaan. De gebruiker kan ook de taken ordenen waarin het moet worden gegenereerd.

11. Wat is COALESCE in SQL Server?

COALESCE wordt gebruikt om de eerste niet-null-uitdrukking binnen de argumenten te retourneren. Deze functie wordt gebruikt om een ​​niet-nulwaarde te retourneren 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 Programming?

Uitzonderingen worden afgehandeld met behulp van TRY ---- CATCH-constructies en het wordt afgehandeld door scripts te schrijven in het TRY-blok en foutafhandeling in het CATCH-blok.

13. Wat is het doel van de FLOOR-functie?

FLOOR-functie wordt gebruikt om een ​​niet-geheel getal naar boven af ​​te ronden naar het vorige kleinste gehele getal. Voorbeeld wordt gegeven

FLOOR(6.7)

Retourneert 6.

14. Kunnen we sloten in de database controleren? Zo ja, hoe kunnen we deze vergrendelingcontrole uitvoeren?

Ja, we kunnen vergrendelingen in de database controleren. Het kan worden bereikt door de ingebouwde opgeslagen procedure genaamd sp_lock te gebruiken.

15. Wat is het gebruik van de SIGN-functie?

De SIGN-functie wordt gebruikt om te bepalen of het opgegeven getal positief, negatief en 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 opdrachten voor invoegen of bijwerken of verwijderen tegen een tabel worden uitgevoerd. Triggers worden automatisch geactiveerd of uitgevoerd wanneer de gegevens worden gewijzigd. Het kan automatisch worden uitgevoerd bij invoegen, verwijderen en bijwerken.

17. Wat zijn de soorten triggers?

Er zijn vier soorten triggers en ze zijn:

  • Invoegen
  • Verwijderen
  • Bijwerken
  • In plaats van

18. Wat is een IDENTITY-kolom in invoeginstructies?

IDENTITY-kolom wordt gebruikt in tabelkolommen om die kolom te maken als automatisch oplopend nummer of een surrogaatsleutel.

19. Wat is Bulkcopy in SQL?

Bulkcopy is een tool die 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 query wordt gebruikt om de lijst met triggers in een database te krijgen?

Vraag om de lijst met triggers in de database te krijgen

Select * from sys.objects where

21. Wat is het verschil tussen UNION en UNION ALL?

  • UNION: om gerelateerde informatie uit twee tabellen te selecteren, wordt de UNION-opdracht gebruikt. Het is vergelijkbaar met de opdracht JOIN.
  • UNION All: het UNION ALL-commando is gelijk aan het UNION-commando, behalve dat UNION ALL alle waarden selecteert. Het verwijdert geen dubbele rijen, maar haalt alle rijen uit alle tabellen op.

22. Hoe worden globale tijdelijke tabellen weergegeven en de reikwijdte ervan?

Globale tijdelijke tabellen worden weergegeven met ## voor de tabelnaam. Het bereik is de buitenkant van de sessie, terwijl lokale tijdelijke tabellen zich binnen de sessie bevinden. Sessie-ID kan worden gevonden met @@ SPID.

23. Wat zijn de verschillen tussen de opgeslagen procedure en de dynamische SQL?

Opgeslagen procedure is een set instructies die in een gecompileerde vorm wordt opgeslagen. Dynamische SQL is een set instructies die tijdens runtime dynamisch worden opgebouwd en niet in een database worden opgeslagen, maar gewoon tijdens runtime worden uitgevoerd.

24. Wat is sorteren?

Sortering wordt gedefinieerd om de sorteervolgorde in een tabel te specificeren. Er zijn drie soorten sorteervolgorde -

  1. Hoofdlettergevoelig
  2. Hoofdletterongevoelig
  3. Binair

25. Hoe kunnen we het aantal records in een tabel tellen?

Hieronder volgen de query's die kunnen worden gebruikt om het aantal records in een tabel te krijgen:

Select * from 
 Select count(*) from 
 Select rows from sysindexes where id=OBJECT_ID(tablename) and indid<2

26. Wat is de opdracht die 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 het UPDATE_STATISTICS-commando?

De opdracht UPDATE_STATISTICS wordt gebruikt om de indexen op de tabellen bij te werken wanneer er een groot aantal verwijderingen of wijzigingen is opgetreden of wanneer er bulksgewijs wordt gekopieerd in indexen.

28. Wat is het nut van de instructie SET NOCOUNT ON / OFF?

NOCOUNT is standaard ingesteld op UIT en retourneert het aantal records dat is beïnvloed wanneer de opdracht wordt uitgevoerd. Als de gebruiker het aantal betrokken 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 bevatten?

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 Magic Tables in SQL Server?

Tijdens DML-bewerkingen zoals Insert, Delete en Update, maakt SQL Server magische tabellen om de waarden tijdens de DML-bewerkingen vast te houden. Deze magische tabellen worden gebruikt in de triggers voor gegevenstransacties.

31. Wat is het verschil tussen SUBSTR en CHARINDEX in de SQL Server?

De SUBSTR-functie wordt gebruikt om een ​​specifiek gedeelte van een string in een bepaalde string te retourneren. Maar de CHARINDEX-functie geeft de tekenpositie in een opgegeven opgegeven tekenreeks.

SUBSTRING('Smiley',1,3)

Geeft resultaat als Smi

CHARINDEX('i', 'Smiley',1)

3 geeft als resultaat I 3 weergegeven derde stand van de tekenreeks

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 in de sql-server. Deze functie zorgt ook voor het vervangen van een waarde door de NULL.

34. Wat is het gebruik van de FOR-clausule?

FOR-clausule wordt voornamelijk gebruikt voor XML- en browseropties. Deze clausule wordt voornamelijk gebruikt om de queryresultaten in XML-indeling of in een browser weer te geven.

35. Wat is het maximale aantal indexen per tafel?

Voor SQL Server 2008 100 kan Index worden gebruikt als maximum 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 toestand waarin de ROLLBACK werd uitgevoerd.

37. Wat is het verschil tussen varchar- en nvarchar-typen?

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  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 RIJNUMMER-functie van SQL Server.

41. Waar worden gebruikersnamen en wachtwoorden van SQL Server 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 worden gekopieerd?

INVOEGEN IN SELECTEREN

Deze opdracht wordt gebruikt om gegevens in te voegen in een tabel die al is gemaakt.

SELECTEER IN

Deze opdracht wordt gebruikt om een ​​nieuwe tabel te maken en de structuur en gegevens kunnen uit een bestaande tabel worden gekopieerd.

44. Wat is TABLESAMPLE?

TABLESAMPLE wordt gebruikt om willekeurig een steekproef van 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 om foutverwerking voor een bepaalde sessie te genereren en in gang te zetten. Die door de gebruiker gedefinieerde berichten worden opgeslagen in de tabel sys.messages.

46. ​​Wat wordt bedoeld met XML Datatype?

XML-gegevenstype wordt gebruikt om XML-documenten op te slaan in de SQL Server-database. Kolommen en variabelen worden gemaakt en slaan XML-exemplaren op in de database.

47. Wat is CDC?

CDC wordt afgekort als Change Data Capture, die wordt gebruikt om de gegevens vast te leggen die onlangs 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 SQL-server voor analyse en uitvoering. Alle verklaringen moeten worden gecontroleerd op kwetsbaarheden, aangezien het alle syntactisch geldige queries uitvoert die het ontvangt.

Zelfs parameters kunnen worden gemanipuleerd door de bekwame en ervaren aanvallers.

49. Welke methoden worden gebruikt om bescherming te bieden tegen aanvallen met SQL-injectie?

Hieronder volgen de methoden die worden gebruikt om u te beschermen tegen aanvallen met SQL-injectie:

  • Gebruik parameters voor opgeslagen procedures
  • Invoerparameters filteren
  • Gebruik parameterverzameling met dynamische SQL
  • In dezelfde clausule, escape-tekens van de gebruiker

50. Wat is een gefilterde index?

Gefilterde 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 is gemaakt met de WHERE-component, wordt deze Filtered Index genoemd