50 glavnih pitanja o intervjuu za SQL Server & Odgovori

Anonim

Preuzmite PDF

1. Koja su dva načina provjere autentičnosti u SQL Serveru?

Postoje dva načina provjere autentičnosti -

  • Windows način rada
  • Mješoviti način

Načini se mogu mijenjati odabirom izbornika alata svojstava konfiguracije SQL Servera i odabirom sigurnosne stranice.

2. Što je SQL Profiler?

SQL Profiler alat je koji administratoru sustava omogućuje praćenje događaja na SQL poslužitelju. To se uglavnom koristi za hvatanje i spremanje podataka o svakom događaju datoteke ili tablice za analizu.

3. Što je rekurzivno pohranjeni postupak?

SQL Server podržava rekurzivnu pohranjenu proceduru koja sama sebe poziva. Rekurzivno pohranjeni postupak može se definirati kao metoda rješavanja problema pri čemu se rješenje dolazi uzastopno. Može se ugnijezditi do 32 razine.

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. Koje su razlike između lokalnih i globalnih privremenih tablica?

  • Lokalne privremene tablice vidljive su kad postoji veza i brišu se kad je veza zatvorena.
CREATE TABLE #
  • Globalne privremene tablice vidljive su svim korisnicima i brišu se kad se veza koja ga je stvorila zatvori.
CREATE TABLE ##

5. Što je CHECK ograničenje?

Ograničenje CHECK može se primijeniti na stupac u tablici kako bi se ograničile vrijednosti koje se mogu staviti u stupac. Ograničenje provjere je nametnuti integritet.

6. Mogu li se SQL poslužitelji povezati s drugim poslužiteljima?

SQL poslužitelj može se povezati s bilo kojom bazom podataka koja ima OLE-DB dobavljača koji daje vezu. Primjer: Oracle ima OLE-DB dobavljača koji ima vezu za povezivanje s grupom SQL poslužitelja.

7. Što je podupit i njegova svojstva?

Podupit je upit koji se može ugnijezditi unutar glavnog upita poput izraza Odabir, Ažuriranje, Umetanje ili Brisanje. To se može koristiti kada je dopušteno izražavanje. Svojstva podupita mogu se definirati kao

  • Potupit ne bi trebao imati redoslijed prema klauzuli
  • Podupit treba biti smješten s desne strane operatora usporedbe glavnog upita
  • Potupit treba priložiti u zagrade jer ga treba izvršiti prvo prije glavnog upita
  • Može se uključiti više podupita

8. Koje su vrste podupita?

Postoje tri vrste podupita -

  • Podupit za jedan red koji vraća samo jedan redak
  • Podupit s više redaka koji vraća više redaka
  • Podupit s više stupaca koji vraća višestruke stupce glavnom upitu. S tim rezultatom podupita izvršit će se Glavni upit.

9. Što je agent SQL poslužitelja?

Agent SQL Servera igra vitalnu ulogu u svakodnevnim zadacima administratora SQL poslužitelja (DBA). Svrha poslužiteljskog agenta je lako implementirati zadatke pomoću mehanizma planera koji omogućava našim poslovima pokretanje u zakazano vrijeme i datum.

10. Koji su planirani zadaci u SQL Serveru?

Planirani zadaci ili poslovi koriste se za automatizaciju procesa koji se mogu pokretati u zakazano vrijeme u redovnom intervalu. Ovo raspoređivanje zadataka pomaže smanjiti ljudsku intervenciju tijekom noći, a hranjenje se može obaviti u određeno vrijeme. Korisnik također može naručiti zadatke u kojima ga treba generirati.

11. Što je COALESCE u SQL Serveru?

COALESCE se koristi za vraćanje prvog ne-null izraza unutar argumenata. Ova se funkcija koristi za vraćanje ne-null iz više od jednog stupca u argumentima.

Primjer -

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

12. Kako se s iznimkama može postupati u programiranju za SQL Server?

Iznimke se rješavaju pomoću TRY ---- CATCH konstrukcija, a obrađuje se pisanjem skripti unutar bloka TRY i rukovanjem pogreškama u bloku CATCH.

13. Koja je svrha funkcije FLOOR?

Funkcija FLOOR koristi se za zaokruživanje vrijednosti koja nije cijela na prethodni najmanji cijeli broj. Naveden je primjer

FLOOR(6.7)

Povrat 6.

14. Možemo li provjeriti zaključavanja u bazi podataka? Ako da, kako možemo izvršiti ovu provjeru zaključavanja?

Da, možemo provjeriti zaključavanja u bazi podataka. To se može postići korištenjem ugrađene pohranjene procedure koja se naziva sp_lock.

15. Čemu služi SIGN funkcija?

Funkcija SIGN koristi se za određivanje je li navedeni broj pozitivan, negativan i nula. To će vratiti + 1, -1 ili 0.

Primjer -

SIGN(-35) returns -1

16. Što je okidač?

Okidači se koriste za izvršavanje serije SQL koda kada se naredbe za umetanje, ažuriranje ili brisanje izvršavaju na tablici. Okidači se automatski aktiviraju ili izvršavaju kada se podaci promijene. Može se automatski izvršiti na operacijama umetanja, brisanja i ažuriranja.

17. Koje su vrste okidača?

Postoje četiri vrste okidača i to su:

  • Umetnuti
  • Izbrisati
  • Ažuriraj
  • Umjesto

18. Što je IDENTITY stupac u izjavama za umetanje?

Stupac IDENTITY koristi se u stupcima tablice za izradu tog stupca kao automatskog inkrementalnog broja ili surogat ključa.

19. Što je Bulkcopy u SQL-u?

Bulkcopy je alat koji se koristi za kopiranje velike količine podataka iz tablica. Ovaj se alat koristi za učitavanje velike količine podataka u SQL Server.

20. Koji će se upit koristiti za dobivanje popisa okidača u bazi podataka?

Upit za dobivanje popisa okidača u bazi podataka-

Select * from sys.objects where

21. Koja je razlika između UNION i UNION ALL?

  • UNION: Za odabir povezanih podataka iz dvije tablice koristi se naredba UNION. Slično je naredbi JOIN.
  • UNION All: Naredba UNION ALL jednaka je naredbi UNION, osim što UNION ALL odabire sve vrijednosti. Neće ukloniti duplicirane retke, već će dohvatiti sve retke iz svih tablica.

22. Kako su predstavljene globalne privremene tablice i njihov opseg?

Globalne privremene tablice predstavljene su s ## ispred naziva tablice. Opseg će biti izvan sesije, dok su lokalne privremene tablice unutar sesije. ID sesije možete pronaći pomoću @@ SPID.

23. Koje su razlike između pohranjene procedure i dinamičkog SQL-a?

Pohranjeni postupak je skup iskaza koji se pohranjuje u kompiliranom obliku. Dinamički SQL je skup izraza koji se dinamički konstruiraju za vrijeme izvođenja i neće se pohraniti u bazu podataka, već se jednostavno izvršava tijekom vremena izvođenja.

24. Što je usporedba?

Poredak je definiran kako bi se odredio redoslijed sortiranja u tablici. Postoje tri vrste redoslijeda sortiranja -

  1. Osjetljivo na velika i mala slova
  2. Neosjetljivo na velika i mala slova
  3. Binarni

25. Kako možemo dobiti brojanje broja zapisa u tablici?

Slijede upiti koji se mogu koristiti za dobivanje broja zapisa u tablici -

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

26. Koja se naredba koristi za dobivanje verzije SQL Servera?

Select SERVERPROPERTY('productversion')

koristi se za dobivanje verzije SQL Servera.

27. Što je naredba UPDATE_STATISTICS?

Naredba UPDATE_STATISTICS koristi se za ažuriranje indeksa na tablicama kada se u indeksima dogodi velika količina brisanja ili izmjena ili skupnih kopija.

28. Kakva je korist od izjave SET NOCOUNT ON / OFF?

Prema zadanim postavkama, NOCOUNT je postavljeno na OFF i vraća broj zapisa koji su pogođeni svaki put kada se naredba izvršava. Ako korisnik ne želi prikazati broj zahvaćenih zapisa, može se izričito postaviti na ON- (SET NOCOUNT ON).

29. Koja se tablica SQL poslužitelja koristi za pohranu skripti pohranjenih procedura?

Sys.SQL_Modules je tablica SQL Servera koja se koristi za pohranu skripte pohranjene procedure. Naziv pohranjene procedure sprema se u tablicu koja se naziva Sys.Procedures.

30. Što su čarobne tablice u SQL Serveru?

Tijekom DML operacija poput Umetanje, Brisanje i Ažuriranje, SQL Server stvara čarobne tablice za čuvanje vrijednosti tijekom DML operacija. Te se čarobne tablice koriste unutar okidača za transakciju podataka.

31. Koja je razlika između SUBSTR i CHARINDEX u SQL poslužitelju?

Funkcija SUBSTR koristi se za vraćanje određenog dijela niza u danom nizu. Ali, funkcija CHARINDEX daje položaj znaka u zadanom navedenom nizu.

SUBSTRING('Smiley',1,3)

Daje rezultat kao Smi

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

Daje 3 kao rezultat kao što se pojavljujem u 3. položaju niza

32. Kako možete stvoriti prijavu?

Sljedeću naredbu možete koristiti za stvaranje prijave

CREATE LOGIN MyLogin WITH PASSWORD = '123';

33. Što je operator ISNULL ()?

Funkcija ISNULL koristi se za provjeru je li zadana vrijednost NULL ili nije NULL na sql poslužitelju. Ova funkcija također omogućuje zamjenu vrijednosti s NULL.

34. Kakva je korist od klauzule FOR?

Klauzula FOR uglavnom se koristi za XML i opcije preglednika. Ova se klauzula uglavnom koristi za prikaz rezultata upita u XML formatu ili u pregledniku.

35. Koji će biti maksimalni broj indeksa po tablici?

Za SQL Server 2008 100 indeks se može koristiti kao maksimalni broj po tablici. 1 klasterizirani indeks i 999 neklasteriziranih indeksa po tablici mogu se koristiti u SQL poslužitelju.

1000 Indeks se može koristiti kao maksimalni broj po tablici. 1 klasterizirani indeks i 999 neklasteriziranih indeksa po tablici mogu se koristiti u SQL poslužitelju.

1 klasterizirani indeks i 999 neklasteriziranih indeksa po tablici mogu se koristiti u SQL poslužitelju.

36. Koja je razlika između COMMIT i ROLLBACK?

Svaka izjava između BEGIN i COMMIT postaje postojana u bazi podataka kada se izvrši COMMIT. Svaka izjava između BEGIN i ROOLBACK vraća se u stanje kada je izvršen ROLLBACK.

37. Koja je razlika između vrsta varchar i nvarchar?

Varchar i nvarchar su isti, ali jedina je razlika što se nvarhcar može koristiti za spremanje Unicode znakova za više jezika, a također zauzima više prostora u usporedbi s varcharom.

38. Kakva je korist od @@ SPID?

@@ SPID vraća ID sesije trenutnog korisničkog procesa.

39. Koja se naredba koristi za ponovno sastavljanje pohranjene procedure u vrijeme izvođenja?

Pohranjeni postupak može se izvršiti uz pomoć ključne riječi koja se naziva RECOMPILE.

Primjer

Exe  WITH RECOMPILE

Ili možemo uključiti WITHRECOMPILE u sam pohranjeni postupak.

40. Kako izbrisati dvostruke retke u SQL Server?

Dvostruki se redovi mogu izbrisati pomoću značajke CTE i REDNI BROJ SQL Servera.

41. Gdje su SQL Server korisnička imena i lozinke pohranjeni u SQL Server?

Korisnička imena i lozinke pohranjeni su u sys.server_principals i sys.sql_logins. Ali lozinke nisu pohranjene u uobičajenom tekstu.

42. Koja je razlika između GETDATE i SYSDATETIME?

Obje su iste, ali GETDATE može dati vrijeme do milisekundi, a SYSDATETIME preciznost do nanosekunde. SYSDATE TIME je točniji od GETDATE.

43. Kako se podaci mogu kopirati iz jedne tablice u drugu tablicu?

INSERT IN TO SELECT

Ova se naredba koristi za umetanje podataka u tablicu koja je već kreirana.

ODABERITE U

Ova se naredba koristi za stvaranje nove tablice, a njezina se struktura i podaci mogu kopirati iz postojeće tablice.

44. Što je TABLESAMPLE?

TABLESAMPLE koristi se za slučajno izdvajanje uzoraka redova koji su svi potrebni za aplikaciju. Uzeti uzorci redaka temelje se na postotku redaka.

45. Koja se naredba koristi za poruke definirane od strane korisnika?

RAISEERROR je naredba koja se koristi za generiranje i pokreće obradu pogrešaka za datu sesiju. Te korisnički definirane poruke pohranjuju se u tablici sys.messages.

46. ​​Što podrazumijevaju pod XML tipom podataka?

XML tip podataka koristi se za spremanje XML dokumenata u bazu podataka SQL Servera. Stupci i varijable kreiraju se i pohranjuju XML instance u bazu podataka.

47. Što je CDC?

CDC je skraćeno kao Change Data Capture (Promijeni hvatanje podataka) koji se koristi za hvatanje podataka koji su nedavno promijenjeni. Ova je značajka prisutna u SQL Server 2008.

48. Što je SQL ubrizgavanje?

SQL ubrizgavanje napad je zlonamjernih korisnika u kojem se zlonamjerni kod može umetnuti u nizove koji se mogu proslijediti instanci SQL poslužitelja za raščlanjivanje i izvršavanje. Sve izjave moraju provjeriti ranjivosti jer izvršava sve sintaksički valjane upite koje prima.

Vještim i iskusnim napadačima mogu upravljati čak i parametrima.

49. Koje su metode korištene za zaštitu od napada SQL ubrizgavanjem?

Slijede metode korištene za zaštitu od napada SQL ubrizgavanjem:

  • Koristite parametre za pohranjene procedure
  • Filtriranje ulaznih parametara
  • Koristite prikupljanje parametara s Dynamic SQL-om
  • U sličnoj klauzuli, korisnik izbjegava znakove

50. Što je filtrirani indeks?

Filtrirani indeks koristi se za filtriranje određenog dijela redaka u tablici radi poboljšanja izvedbe upita, održavanja indeksa i smanjenja troškova skladištenja indeksa. Kada se indeks kreira klauzulom WHERE, tada se naziva Filtrirani indeks