Topp 50 spørsmål om SQL Server-intervju & Svar

Anonim

Last ned PDF

1. Hva er de to autentiseringsmodusene i SQL Server?

Det er to autentiseringsmodi -

  • Windows-modus
  • Blandet modus

Modus kan endres ved å velge verktøymenyen til SQL Server-konfigurasjonsegenskapene og velge sikkerhetsside.

2. Hva er SQL Profiler?

SQL Profiler er et verktøy som lar systemadministratoren overvåke hendelser i SQL-serveren. Dette brukes hovedsakelig til å fange opp og lagre data om hver hendelse i en fil eller en tabell for analyse.

3. Hva er rekursiv lagret prosedyre?

SQL Server støtter rekursiv lagret prosedyre som kaller av seg selv. Rekursiv lagret prosedyre kan defineres som en metode for problemløsning hvor løsningen ankommer gjentatte ganger. Den kan hekke opp til 32 nivåer.

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. Hva er forskjellen mellom lokale og globale midlertidige tabeller?

  • Lokale midlertidige tabeller er synlige når det er en forbindelse, og blir slettet når forbindelsen er lukket.
CREATE TABLE #
  • Globale midlertidige tabeller er synlige for alle brukere, og slettes når forbindelsen som opprettet den er stengt.
CREATE TABLE ##

5. Hva er CHECK-begrensning?

En CHECK-begrensning kan brukes på en kolonne i en tabell for å begrense verdiene som kan plasseres i en kolonne. Sjekk begrensning er å håndheve integritet.

6. Kan SQL-servere kobles til andre servere?

SQL-server kan kobles til hvilken som helst database som OLE-DB-leverandør har til å gi en lenke. Eksempel: Oracle har OLE-DB-leverandør som har lenke for å koble til SQL-servergruppen.

7. Hva er underspørring og dens egenskaper?

En delspørring er et spørsmål som kan nestes i et hovedspørsmål som Select, Update, Insert eller Delete statements. Dette kan brukes når uttrykk er tillatt. Egenskaper for underspørring kan defineres som

  • Et underspørsmål skal ikke ha rekkefølge etter klausul
  • Et underspørsmål skal plasseres på høyre side av sammenligningsoperatøren for hovedspørsmålet
  • En underspørring skal være lukket i parentes fordi den må utføres først før hovedspørringen
  • Mer enn ett underspørring kan inkluderes

8. Hva er typene underspørsmål?

Det er tre typer underspørringer -

  • Enkeltsub-spørring som bare returnerer en rad
  • Flere raderspørringer som returnerer flere rader
  • Flere kolonnerspørringer som returnerer flere kolonner til hovedspørsmålet. Med dette undersøkingsresultatet vil Hovedspørringen utføres.

9. Hva er SQL server agent?

SQL Server-agenten spiller en viktig rolle i daglige oppgaver til SQL serveradministrator (DBA). Serveragentens formål er å implementere oppgavene enkelt med planleggermotoren som lar jobbene våre kjøre på planlagt dato og klokkeslett.

10. Hva er planlagte oppgaver i SQL Server?

Planlagte oppgaver eller jobber brukes til å automatisere prosesser som kan kjøres på en planlagt tid med jevne mellomrom. Denne planleggingen av oppgaver bidrar til å redusere menneskelig inngripen om natten, og fôr kan gjøres på et bestemt tidspunkt. Brukeren kan også bestille oppgavene der den skal genereres.

11. Hva er COALESCE i SQL Server?

COALESCE brukes til å returnere det første ikke-null-uttrykket i argumentene. Denne funksjonen brukes til å returnere en ikke-null fra mer enn en kolonne i argumentene.

Eksempel -

Select COALESCE(empno, empname, salary) from employee;

12. Hvordan unntak kan håndteres i SQL Server-programmering?

Unntak håndteres ved hjelp av TRY ---- CATCH-konstruksjoner, og det håndteres ved å skrive skript inne i TRY-blokken og feilhåndtering i CATCH-blokken.

13. Hva er formålet med FLOOR-funksjonen?

FLOOR-funksjonen brukes til å avrunde en ikke-heltallverdi til forrige minste heltall. Eksempel er gitt

FLOOR(6.7)

Returnerer 6.

14. Kan vi sjekke låser i databasen? I så fall hvordan kan vi gjøre denne låsekontrollen?

Ja, vi kan sjekke låser i databasen. Det kan oppnås ved å bruke den innebygde lagrede prosedyren kalt sp_lock.

15. Hva er bruken av SIGN-funksjonen?

SIGN-funksjonen brukes til å bestemme om nummeret som er spesifisert er positivt, negativt og null. Dette vil returnere + 1, -1 eller 0.

Eksempel -

SIGN(-35) returns -1

16. Hva er en utløser?

Utløsere brukes til å utføre en gruppe SQL-koder når innlegg eller oppdatering eller sletting av kommandoer kjøres mot en tabell. Utløsere utløses eller kjøres automatisk når dataene endres. Den kan utføres automatisk ved innsetting, sletting og oppdatering.

17. Hva er typene utløsere?

Det er fire typer utløsere, og de er:

  • Sett inn
  • Slett
  • Oppdater
  • I stedet for

18. Hva er en IDENTITET-kolonne i innleggsuttalelser?

IDENTITY-kolonnen brukes i tabellkolonner for å lage den kolonnen som Auto inkrementalt nummer eller en surrogatnøkkel.

19. Hva er bulkkopi i SQL?

Bulkcopy er et verktøy som brukes til å kopiere stor mengde data fra tabeller. Dette verktøyet brukes til å laste inn store mengder data i SQL Server.

20. Hva blir søkt brukt for å få listen over utløsere i en database?

Spørring for å få listen over utløsere i databasen-

Select * from sys.objects where

21. Hva er forskjellen mellom UNION og UNION ALL?

  • UNION: For å velge relatert informasjon fra to tabeller brukes UNION-kommando. Det ligner på JOIN-kommandoen.
  • UNION All: UNION ALL-kommandoen er lik UNION-kommandoen, bortsett fra at UNION ALL velger alle verdier. Det vil ikke fjerne dupliserte rader, i stedet henter alle rader fra alle tabeller.

22. Hvordan er globale midlertidige tabeller representert og omfanget?

Globale midlertidige tabeller er representert med ## foran tabellnavnet. Omfanget vil være utenfor økten, mens lokale midlertidige tabeller er inne i økten. Sessions-ID finner du ved å bruke @@ SPID.

23. Hva er forskjellene mellom lagret prosedyre og dynamisk SQL?

Lagret prosedyre er et sett med utsagn som lagres i en samlet form. Dynamisk SQL er et sett med utsagn som dynamisk konstrueres ved kjøretid, og det vil ikke bli lagret i en database, og det kjøres bare i løpet av kjøretiden.

24. Hva er sortering?

Sortering er definert for å spesifisere sorteringsrekkefølgen i en tabell. Det er tre typer sorteringsrekkefølge -

  1. Skift mellom store og små bokstaver
  2. Saksfølsom
  3. Binær

25. Hvordan kan vi telle antall poster i en tabell?

Følgende er spørsmålene kan brukes til å få antall poster i en tabell -

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

26. Hva er kommandoen som brukes for å få versjonen av SQL Server?

Select SERVERPROPERTY('productversion')

brukes til å hente versjonen av SQL Server.

27. Hva er UPDATE_STATISTICS-kommandoen?

UPDATE_STATISTICS-kommandoen brukes til å oppdatere indeksene på tabellene når det er store mengder slettinger eller modifikasjoner eller massekopi forekommer i indeksene.

28. Hva er bruken av SET NOCOUNT ON / OFF statement?

NOCOUNT er som standard satt til AV, og det returnerer antall poster som ble berørt når kommandoen blir utført. Hvis brukeren ikke vil vise antall berørte poster, kan den eksplisitt settes til PÅ- (SET NOCOUNT ON).

29. Hvilken SQL-servertabell brukes til å holde de lagrede prosedyreskriptene?

Sys.SQL_Modules er en SQL Server-tabell som brukes til å lagre skriptet til den lagrede prosedyren. Navnet på den lagrede prosedyren lagres i tabellen Sys.Procedures.

30. Hva er Magic Tables i SQL Server?

Under DML-operasjoner som Sett inn, Slett og Oppdater oppretter SQL Server magiske tabeller for å holde verdiene under DML-operasjonene. Disse magiske tabellene brukes inne i utløserne for datatransaksjon.

31. Hva er forskjellen mellom SUBSTR og CHARINDEX i SQL Server?

SUBSTR-funksjonen brukes til å returnere spesifikk del av strengen i en gitt streng. Men CHARINDEX-funksjonen gir karakterposisjon i en gitt spesifisert streng.

SUBSTRING('Smiley',1,3)

Gir resultat som Smi

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

Gir 3 som resultat da jeg vises i tredje posisjon av strengen

32. Hvordan kan du opprette en pålogging?

Du kan bruke følgende kommando for å opprette en pålogging

CREATE LOGIN MyLogin WITH PASSWORD = '123';

33. Hva er ISNULL () -operatør?

ISNULL-funksjonen brukes til å sjekke om verdien som er gitt er NULL eller ikke NULL i SQL Server. Denne funksjonen gir også mulighet til å erstatte en verdi med NULL.

34. Hva er bruken av FOR-klausul?

FOR-klausul brukes hovedsakelig for XML- og nettleseralternativer. Denne paragrafen brukes hovedsakelig til å vise søkeresultatene i XML-format eller i nettleseren.

35. Hva vil være maksimalt antall indekser per tabell?

For SQL Server 2008 100 kan indeks brukes som maksimalt antall per tabell. 1 klynget indeks og 999 ikke-klyngede indekser per tabell kan brukes i SQL Server.

1000 Index kan brukes som maksimalt antall per tabell. 1 klynget indeks og 999 ikke-klyngede indekser per tabell kan brukes i SQL Server.

1 klynget indeks og 999 ikke-klyngede indekser per tabell kan brukes i SQL Server.

36. Hva er forskjellen mellom COMMIT og ROLLBACK?

Hver uttalelse mellom BEGIN og COMMIT blir vedvarende i databasen når COMMIT utføres. Hver uttalelse mellom BEGIN og ROOLBACK blir tilbakeført til staten da ROLLBACK ble utført.

37. Hva er forskjellen mellom varchar- og nvarchar-typer?

Varchar og nvarchar er like, men den eneste forskjellen er at nvarhcar kan brukes til å lagre Unicode-tegn på flere språk, og det tar også mer plass sammenlignet med varchar.

38. Hva er bruken av @@ SPID?

En @@ SPID returnerer økt-ID-en for den nåværende brukerprosessen.

39. Hva er kommandoen som brukes til å kompilere den lagrede prosedyren på nytt på kjøretid?

Lagret prosedyre kan utføres ved hjelp av nøkkelordet kalt RECOMPILE.

Eksempel

Exe  WITH RECOMPILE

Eller vi kan inkludere WITHRECOMPILE i selve den lagrede prosedyren.

40. Hvordan sletter du dupliserte rader i SQL Server?

Dupliserader kan slettes ved hjelp av funksjonen CTE og ROW NUMER på SQL Server.

41. Hvor er SQL Server brukernavn og passord lagret i SQL Server?

Brukernavn og passord lagres i sys.server_principals og sys.sql_logins. Men passord lagres ikke i vanlig tekst.

42. Hva er forskjellen mellom GETDATE og SYSDATETIME?

Begge er like, men GETDATE kan gi tid til millisekunder og SYSDATETIME kan gi presisjon til nanosekunder. SYSDATE TIME er mer nøyaktig enn GETDATE.

43. Hvordan kan data kopieres fra en tabell til en annen tabell?

INSERT I VALG

Denne kommandoen brukes til å sette inn data i en allerede opprettet tabell.

VELG INN

Denne kommandoen brukes til å lage en ny tabell, og dens struktur og data kan kopieres fra eksisterende tabell.

44. Hva er TABLESAMPLE?

TABLESAMPLE brukes til å trekke ut utvalg av rader tilfeldig som alle er nødvendige for applikasjonen. Eksempelradene som er tatt er basert på prosentandelen av rader.

45. Hvilken kommando brukes til brukerdefinerte feilmeldinger?

RAISEERROR er kommandoen som brukes til å generere og starte feilbehandling for en gitt økt. Disse brukerdefinerte meldingene lagres i sys.messages-tabellen.

46. ​​Hva betyr XML-datatype?

XML-datatype brukes til å lagre XML-dokumenter i SQL Server-databasen. Kolonner og variabler opprettes og lagrer XML-forekomster i databasen.

47. Hva er CDC?

CDC er forkortet som Change Data Capture som brukes til å fange opp dataene som nylig er endret. Denne funksjonen er tilstede i SQL Server 2008.

48. Hva er SQL-injeksjon?

SQL-injeksjon er et angrep fra ondsinnede brukere der ondsinnet kode kan settes inn i strenger som kan sendes til en forekomst av SQL-server for parsing og kjøring. Alle utsagn må sjekke om det er sårbarheter da den utfører alle syntaktisk gyldige spørsmål den mottar.

Selv parametere kan manipuleres av dyktige og erfarne angripere.

49. Hva er metodene som brukes til å beskytte mot SQL-injeksjonsangrep?

Følgende er metodene som brukes til å beskytte mot SQL-injeksjonsangrep:

  • Bruk parametere for lagrede prosedyrer
  • Filtrering av inngangsparametere
  • Bruk Parametersamling med Dynamic SQL
  • I samme ledd, unnslippe tegn

50. Hva er filtrert indeks?

Filtered Index brukes til å filtrere noen deler av rader i en tabell for å forbedre spørringsytelsen, indeksvedlikehold og redusere indekslagringskostnader. Når indeksen er opprettet med WHERE-ledd, kalles den Filtered Index