50 parasta SQL Server -haastattelukysymystä & Vastaukset

Anonim

Lataa PDF

1. Mitkä ovat kaksi todennustilaa SQL Serverissä?

On olemassa kaksi todennustilaa -

  • Windows-tila
  • Sekoitettu tila

Tiloja voidaan muuttaa valitsemalla SQL Server -määritysominaisuuksien työkaluvalikko ja valitsemalla suojaussivu.

2. Mikä on SQL Profiler?

SQL Profiler on työkalu, jonka avulla järjestelmänvalvoja voi seurata tapahtumia SQL-palvelimessa. Tätä käytetään pääasiassa tietojen tai taulukon kutakin tapahtumaa koskevien tietojen kaappaamiseen ja tallentamiseen analyysia varten.

3. Mikä on rekursiivinen tallennettu menettely?

SQL Server tukee rekursiivista tallennettua menettelyä, joka kutsuu itse. Rekursiivinen tallennettu menettely voidaan määritellä ongelmanratkaisumenetelmäksi, jossa ratkaisu saapuu toistuvasti. Se voi sijoittaa jopa 32 tasoa.

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. Mitkä ovat erot paikallisten ja globaalien väliaikaisten taulukoiden välillä?

  • Paikalliset väliaikaiset taulukot ovat näkyvissä, kun yhteys on muodostettu, ja ne poistetaan, kun yhteys on suljettu.
CREATE TABLE #
  • Yleiset väliaikaiset taulukot ovat kaikkien käyttäjien nähtävissä, ja ne poistetaan, kun ne luonut yhteys on suljettu.
CREATE TABLE ##

5. Mikä on CHECK-rajoitus?

CHECK-rajoitusta voidaan soveltaa taulukon sarakkeeseen rajoittamaan sarakkeeseen sijoitettavia arvoja. Tarkista rajoitteena on varmistaa eheys.

6. Voivatko SQL-palvelimet linkittää muihin palvelimiin?

SQL-palvelin voidaan liittää mihin tahansa tietokantaan, jolla on linkin antava OLE-DB-palveluntarjoaja. Esimerkki: Oraclella on OLE-DB-palveluntarjoaja, jolla on linkki yhteyden muodostamiseksi SQL-palvelinryhmään.

7. Mikä on alakysely ja sen ominaisuudet?

Alakysely on kysely, joka voidaan sijoittaa pääkyselyyn, kuten Valitse, Päivitä, Lisää tai Poista käskyjä. Tätä voidaan käyttää, kun ilmaisu on sallittu. Alakyselyn ominaisuudet voidaan määritellä

  • Alakyselyssä ei saa olla järjestystä lausekkeen mukaan
  • Alakysely tulisi sijoittaa pääkyselyn vertailuoperaattorin oikealle puolelle
  • Alakyselyn tulisi olla sulkeissa, koska se on suoritettava ensin ennen pääkyselyä
  • Useampi kuin yksi alakysely voidaan sisällyttää

8. Mitkä ovat alakyselyn tyypit?

Alakyselyjä on kolme tyyppiä -

  • Yksirivinen alakysely, joka palauttaa vain yhden rivin
  • Useiden rivien alakysely, joka palauttaa useita rivejä
  • Useiden sarakkeiden alakysely, joka palauttaa useita sarakkeita pääkyselyyn. Tämän alakyselytuloksen kanssa pääkysely suoritetaan.

9. Mikä on SQL-palvelinagentti?

SQL Server -agentilla on tärkeä rooli SQL-palvelimen järjestelmänvalvojan (DBA) päivittäisissä tehtävissä. Palvelinagentin tarkoituksena on toteuttaa tehtävät helposti ajoitusmoottorilla, jonka avulla työmme voivat toimia aikataulun mukaisena päivänä.

10. Mitkä ovat ajoitetut tehtävät SQL Serverissä?

Ajoitettuja tehtäviä tai töitä käytetään automatisoimaan prosesseja, jotka voidaan suorittaa ajoitettuna aikana säännöllisin väliajoin. Tämä tehtävien ajoitus auttaa vähentämään ihmisen toimintaa yöaikaan ja syöttö voidaan tehdä tiettynä ajankohtana. Käyttäjä voi myös tilata tehtävät, joissa se on luotava.

11. Mikä on COALESCE SQL Serverissä?

COALESCE-funktiota käytetään palauttamaan ensimmäinen ei-nolla-lauseke argumenteissa. Tätä funktiota käytetään palauttamaan nolla-arvo useammasta kuin yhdestä argumenttien sarakkeesta.

Esimerkki -

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

12. Kuinka poikkeuksia voidaan käsitellä SQL Server -ohjelmoinnissa?

Poikkeuksia käsitellään käyttämällä TRY ---- CATCH-rakenteita ja se käsitellään kirjoittamalla komentosarjoja TRY-lohkon sisälle ja virheiden käsittelyä CATCH-lohkoon.

13. Mikä on FLOOR-toiminnon tarkoitus?

FLOOR-funktiota käytetään pyöristämään ei-kokonaislukuarvo edelliseen pienimpään kokonaislukuun. Annetaan esimerkki

FLOOR(6.7)

Palauttaa 6.

14. Voimmeko tarkistaa lukot tietokannasta? Jos näin on, miten voimme tehdä tämän lukitustarkastuksen?

Kyllä, voimme tarkistaa lukot tietokannasta. Se voidaan saavuttaa käyttämällä sisäänrakennettua tallennettua menettelyä nimeltä sp_lock.

15. Mikä on SIGN-toiminnon käyttö?

SIGN-funktiota käytetään määrittämään, onko määritetty luku positiivinen, negatiivinen ja nolla. Tämä palauttaa + 1, -1 tai 0.

Esimerkki -

SIGN(-35) returns -1

16. Mikä on laukaisin?

Triggereitä käytetään erän SQL-koodin suorittamiseen, kun lisäys-, päivitys- tai poistokomennot suoritetaan taulukkoon nähden. Triggerit laukaistaan ​​tai suoritetaan automaattisesti, kun tietoja muokataan. Se voidaan suorittaa automaattisesti lisäys-, poisto- ja päivitystoiminnoissa.

17. Mitkä ovat laukaisintyypit?

Käynnistimiä on neljä ja ne ovat:

  • Lisää
  • Poistaa
  • Päivittää
  • Sijasta

18. Mikä on IDENTITY-sarake lisäyslausekkeissa?

IDENTITY -saraketta käytetään taulukon sarakkeissa, jotta sarakkeesta tehdään automaattinen inkrementaalinumero tai korvaava avain.

19. Mikä on Bulkcopy SQL: ssä?

Bulkcopy on työkalu, jota käytetään kopioimaan suuri määrä tietoja taulukoista. Tätä työkalua käytetään lataamaan suuri määrä tietoja SQL Serveriin.

20. Mitä kyselyä käytetään päästöluettelon saamiseksi tietokantaan?

Kysely, jotta saat luettelon laukaisimista tietokanta-

Select * from sys.objects where

21. Mitä eroa on UNIONIN ja UNION ALL: n välillä?

  • UNION: Asiaan liittyvien tietojen valitsemiseksi kahdesta taulukosta käytetään UNION-komentoa. Se on samanlainen kuin JOIN-komento.
  • UNION All: UNION ALL -komento on yhtä suuri kuin UNION-komento, paitsi että UNION ALL valitsee kaikki arvot. Se ei poista päällekkäisiä rivejä, vaan hakee kaikki rivit kaikista taulukoista.

22. Kuinka globaalit väliaikaiset taulukot ovat edustettuina ja kuinka laaja?

Yleisiä väliaikaisia ​​taulukoita edustaa ## ennen taulukon nimeä. Laajuus on istunnon ulkopuolella, kun taas paikalliset väliaikaiset taulukot ovat istunnon sisällä. Istunnon tunnus löytyy osoitteesta @@ SPID.

23. Mitkä ovat erot tallennetun menettelyn ja dynaamisen SQL: n välillä?

Tallennettu menettely on joukko lauseita, jotka tallennetaan koottuun muotoon. Dynaaminen SQL on joukko lauseita, jotka rakennetaan dynaamisesti ajon aikana, eikä sitä tallenneta tietokantaan, ja se yksinkertaisesti suoritetaan ajon aikana.

24. Mikä on lajittelu?

Lajittelu määritetään lajittelujärjestyksen määrittämiseksi taulukossa. Lajittelujärjestystä on kolme tyyppiä -

  1. Isot ja pienet kirjaimet
  2. Kirjainkoosta riippumaton
  3. Binääri

25. Kuinka voimme laskea taulukon tietueiden määrän?

Seuraavia kyselyjä voidaan käyttää tietuemäärän saamiseksi taulukkoon -

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

26. Mitä komentoa käytetään SQL Server -version hakemiseen?

Select SERVERPROPERTY('productversion')

käytetään SQL Server -version hakemiseen.

27. Mikä on UPDATE_STATISTICS-komento?

UPDATE_STATISTICS-komentoa käytetään taulukoiden hakemistojen päivittämiseen, kun indekseissä on paljon poistoja tai muutoksia tai joukkokopioita.

28. Mikä on SET NOCOUNT ON / OFF -käsky?

Oletusarvoisesti NOCOUNT on asetettu OFF-tilaan ja se palauttaa niiden tietueiden määrän, joihin komento suoritetaan. Jos käyttäjä ei halua näyttää tietueiden lukumäärää, johon se vaikuttaa, se voidaan asettaa nimenomaisesti ON- (SET NOCOUNT ON) -asetukseksi.

29. Mitä SQL-palvelintaulukkoa käytetään tallennettujen menettelyskriptien pitämiseen?

Sys.SQL_Modules on SQL Server -taulukko, jota käytetään tallennettujen toimintojen komentosarjan tallentamiseen. Tallennetun menettelyn nimi tallennetaan taulukkoon nimeltä Sys.Procedures.

30. Mitä ovat taulupöydät SQL Serverissä?

DML-toimintojen, kuten Lisää, Poista ja Päivitä, aikana SQL Server luo taulukkotaulukot pitämään arvot DML-toimintojen aikana. Näitä taikataulukoita käytetään datansiirron laukaisijoiden sisällä.

31. Mikä on ero SUBSTR: n ja CHARINDEX: n välillä SQL Serverissä?

SUBSTR-funktiota käytetään palauttamaan jonon tietty osa merkkijonosta. Mutta CHARINDEX-funktio antaa merkin sijainnin tietyssä määritetyssä merkkijonossa.

SUBSTRING('Smiley',1,3)

Antaa tuloksen Smi: nä

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

Antaa 3 seurauksena kuin minä näkyy 3 rd asemassa merkkijonon

32. Kuinka voit luoda kirjautumisen?

Voit luoda kirjautumisen seuraavan komennon avulla

CREATE LOGIN MyLogin WITH PASSWORD = '123';

33. Mikä on ISNULL () -operaattori?

ISNULL-funktiota käytetään tarkistamaan, onko annettu arvo NULL vai ei NULL sql-palvelimessa. Tämä toiminto myös korvaa arvon NULL-arvolla.

34. Mitä FOR-lauseketta käytetään?

FOR-lauseketta käytetään pääasiassa XML- ja selainvaihtoehtoihin. Tätä lauseketta käytetään pääasiassa kyselytulosten näyttämiseen XML-muodossa tai selaimessa.

35. Mikä on indeksien enimmäismäärä taulukkoa kohti?

SQL Server 2008: ssa 100-indeksiä voidaan käyttää taulukoiden enimmäismääränä. SQL Server -palvelimessa voidaan käyttää 1 ryhmittyvää hakemistoa ja 999 ryhmittymättömää hakemistoa taulukkoa kohti.

1000-indeksiä voidaan käyttää taulukoiden enimmäismääränä. SQL Server -palvelimessa voidaan käyttää 1 ryhmittyvää hakemistoa ja 999 ryhmittymättömää hakemistoa taulukkoa kohti.

SQL Server -palvelimessa voidaan käyttää 1 ryhmittyvää hakemistoa ja 999 ryhmittymättömää hakemistoa taulukkoa kohti.

36. Mitä eroa on COMMIT ja ROLLBACK välillä?

Jokainen käsky BEGINin ja COMMITin välillä pysyy tietokantaan pysyvänä, kun COMMIT suoritetaan. Jokainen lause BEGIN ja ROOLBACK välillä palautetaan tilaan, jolloin ROLLBACK suoritettiin.

37. Mikä on ero varchar- ja nvarchar-tyyppien välillä?

Varchar ja nvarchar ovat samat, mutta ainoa ero on, että nvarhcaria voidaan käyttää Unicode-merkkien tallentamiseen useille kielille, ja se vie myös enemmän tilaa verrattuna varchariin.

38. Mikä on @@ SPID: n käyttö?

@@ SPID palauttaa nykyisen käyttäjäprosessin istuntotunnuksen.

39. Mitä komentoa käytetään tallennetun menettelyn uudelleen kääntämiseen ajon aikana?

Tallennettu menettely voidaan suorittaa avainsanan nimeltä RECOMPILE avulla.

Esimerkki

Exe  WITH RECOMPILE

Tai voimme sisällyttää WITHRECOMPILE itse tallennettuun menettelyyn.

40. Kuinka päällekkäiset rivit poistetaan SQL Serveristä?

Päällekkäiset rivit voidaan poistaa SQL Serverin CTE- ja RIVINUMERO-ominaisuuden avulla.

41. Mihin SQL Serverin käyttäjätunnukset ja salasanat on tallennettu SQL Serveriin?

Käyttäjätunnukset ja salasanat tallennetaan sys.server_principals ja sys.sql_logins. Salasanoja ei kuitenkaan tallenneta normaaliin tekstiin.

42. Mitä eroa on GETDATE ja SYSDATETIME?

Molemmat ovat samat, mutta GETDATE voi antaa aikaa millisekunteihin saakka ja SYSDATETIME tarkkuuteen nanosekunteihin saakka. SYSDATE TIME on tarkempi kuin GETDATE.

43. Kuinka tietoja voidaan kopioida taulukosta toiseen?

INSERT IN SELECT

Tätä komentoa käytetään tietojen lisäämiseen jo luotuun taulukkoon.

VALITSE

Tätä komentoa käytetään uuden taulukon luomiseen, ja sen rakenne ja tiedot voidaan kopioida olemassa olevasta taulukosta.

44. Mikä on TABLESAMPLE?

TABLESAMPLE-sovellusta käytetään ottamaan näytteet riveistä satunnaisesti, jotka ovat kaikki sovelluksen kannalta välttämättömiä. Otetut näyterivit perustuvat rivien prosenttiosuuteen.

45. Mitä komentoa käytetään käyttäjän määrittämiin virhesanomiin?

RAISEERROR on komento, jota käytetään luomaan ja käynnistämään virhekäsittely tietylle istunnolle. Nämä käyttäjän määrittelemät viestit tallennetaan sys.messages-taulukkoon.

46. ​​Mitä tarkoitetaan XML-tietotyypillä?

XML-tietotyyppiä käytetään XML-asiakirjojen tallentamiseen SQL Server -tietokantaan. Sarakkeet ja muuttujat luodaan ja tallennetaan XML-esiintymiä tietokantaan.

47. Mikä on CDC?

CDC on lyhenne sanoista Change Data Capture, jota käytetään viime aikoina muutettujen tietojen sieppaamiseen. Tämä ominaisuus on läsnä SQL Server 2008: ssa.

48. Mikä on SQL-injektio?

SQL-injektio on haitallisten käyttäjien hyökkäys, jossa haitallinen koodi voidaan lisätä merkkijonoihin, jotka voidaan välittää SQL-palvelimen ilmentymälle jäsentämistä ja suorittamista varten. Kaikkien lauseiden on tarkistettava haavoittuvuudet, koska ne suorittavat kaikki saamansa syntaktisesti pätevät kyselyt.

Taidot ja kokeneet hyökkääjät voivat myös muokata parametreja.

49. Mitä menetelmiä käytetään suojaamaan SQL-injektiohyökkäyksiltä?

Seuraavassa on esitetty menetelmiä, joita käytetään suojaamaan SQL-injektiohyökkäyksiltä:

  • Käytä parametreja tallennettuihin toimenpiteisiin
  • Suodatetaan tuloparametrit
  • Käytä parametrikokoelmaa dynaamisen SQL: n kanssa
  • Samassa lausekkeessa käyttäjän pakomerkit

50. Mikä on suodatettu hakemisto?

Suodatettua hakemistoa käytetään suodattamaan taulukon joitain rivejä kyselyn suorituskyvyn, indeksin ylläpidon ja indeksin tallennuskustannusten vähentämiseksi. Kun hakemisto luodaan WHERE-lauseella, sitä kutsutaan suodatetuksi hakemistoksi