Top 50 vragen en antwoorden over database-interviews (2024)
Hier zijn database-interviewvragen en antwoorden voor zowel nieuwere als ervaren kandidaten om hun droombaan te krijgen.
Basisvragen en antwoorden over database-interviews voor eerstejaarsstudenten
1) Database definiëren.
Een vooraf afgesproken verzameling cijfers, ook wel data genoemd, wordt een database genoemd.
2) Wat is DBMS?
Databasebeheersystemen (DBMS) zijn applicaties die speciaal zijn ontworpen en die gebruikersinteractie met andere applicaties mogelijk maken.
👉 Gratis pdf-download: database (DBMS) interviewvragen en antwoorden >>
3) Wat zijn de verschillende soorten interacties die door DBMS worden verzorgd?
De verschillende soorten interacties verzorgd door DBMS zijn:
- Gegevensdefinitie
- bijwerken
- Ophalen
- Administratie
4) Scheid de ontwikkeling van databasetechnologie.
De ontwikkeling van databasetechnologie is onderverdeeld in:
- Structuur- of datamodel
- Navigatiemodel
- SQL/relationeel model
5) Wie heeft het relationele model voorgesteld?
Edgar F. Codd stelde het relationele model in 1970 voor.
6) Wat zijn de kenmerken van Databasetaal?
Een databasetaal kan ook functies bevatten zoals:
DBMS-specifiek Configuratie en beheer van opslagengine
Berekeningen voor het wijzigen van zoekresultaten door berekeningen, zoals optellen, tellen, middelen, groeperen, sorteren en kruisverwijzingen Handhaving van beperkingen Applicatieprogrammeerinterface
7) Wat doen databasetalen?
Als talen voor speciale doeleinden hebben ze:
- Taal voor gegevensdefinitie
- Data Manipulatie Taal
- Zoektaal
8) Definieer het databasemodel.
Een datamodel dat fundamenteel bepaalt hoe gegevens kunnen worden opgeslagen, gemanipuleerd en georganiseerd en de structuur van de database wordt logischerwijs een databasemodel genoemd.
9) Wat is SQL?
Gestructureerde Query-taal (SQL) zijnde ANSI-standaardtaal, updates van de database en opdrachten voor toegang.
10) Maak een lijst van de verschillende databaserelaties.
De verschillende databaserelaties zijn:
- Een op een: Eén tabel heeft een relatie met een andere tabel met soortgelijke kolommen.
- Een te veel: Twee tabellen met een primaire en externe sleutelrelatie.
- Veel te veel: Verbindingstabel met veel tabellen die verband houden met veel tabellen.
11) Definieer Normalisatie.
Georganiseerde gegevens zonder inconsistente afhankelijkheid en redundantie binnen een database worden genoemd normalisatie.
12) Maak gebruik van de voordelen van het normaliseren van de database.
Voordelen van het normaliseren van de database zijn:
- Geen dubbele vermeldingen
- Bespaart opslagruimte
- Beschikt over de queryprestaties.
13) Definieer denormalisatie.
Het verbeteren van de databaseprestaties door het toevoegen van redundante gegevens, waardoor complexe gegevens worden verwijderd, wordt denormalisatie genoemd.
14) Definieer DDL en DML.
Het beheren van eigenschappen en attributen van de database wordt Data Definition Language (DDL) genoemd.
Het manipuleren van gegevens in een database, zoals het invoegen, bijwerken en verwijderen, wordt gedefinieerd als Data Manipulation Language. (DML)
15) Roep enkele commando's van DDL op.
Dat zijn:
CREËREN:
Create wordt gebruikt in de CREATE TABLE-instructie. Syntaxis is:
CREATE TABLE [column name] ( [column definitions] ) [ table parameters]
WIJZIGEN:
Het helpt bij het wijzigen van een bestaand databaseobject. De syntaxis is:
ALTER objecttype objectname parameters.
LATEN VALLEN:
Het vernietigt een bestaande database, index, tabel of weergave. De syntaxis is:
DROP objecttype objectname.
16) Definieer Union Alle operatoren en Union.
Volledige opnames van twee tabellen is Union All operator. Een afzonderlijke opname van twee tabellen is Union.
17) Cursor definiëren.
Een databaseobject dat helpt bij het rij voor rij manipuleren van gegevens die een resultatenset vertegenwoordigen, wordt cursor genoemd.
18) Roep de cursortypen op.
Dat zijn:
- Dynamisch: het weerspiegelt veranderingen tijdens het scrollen.
- Statisch: weerspiegelt geen wijzigingen tijdens het scrollen en werkt bij het opnemen van momentopnamen.
- Keyset: gegevenswijziging zonder dat er weerspiegeling van nieuwe gegevens wordt gezien.
19) Roep de soorten cursor op.
De soorten cursor zijn:
- Impliciete cursor: Wordt automatisch gedeclareerd zodra de uitvoering van SQL plaatsvindt zonder medeweten van de gebruiker.
- Expliciete cursor: Gedefinieerd door PL/SQL die de zoekopdracht in meer dan één rij afhandelt.
20) Definieer subquery.
Een query die een query bevat, wordt subquery genoemd.
21) Waarom wordt er een groepsclausule gebruikt?
Groepsclausule gebruikt geaggregeerde waarden die kunnen worden afgeleid door vergelijkbare gegevens te verzamelen.
22) Vergelijk niet-geclusterde en geclusterde index
Beide hebben een B-boomstructuur, een niet-geclusterde index heeft datapointers waardoor één tabel meerdere niet-geclusterde indexen heeft, terwijl een geclusterde index voor elke tabel uniek is.
23) Definieer aggregatiefuncties.
Functies die werken op een verzameling waarden en één enkele waarde retourneren, worden geaggregeerde functies genoemd.
24) Definieer scalaire functies.
De scalaire functie is afhankelijk van het opgegeven argument en retourneert de enige waarde.
25) Welke beperkingen kunt u toepassen bij het maken van weergaven?
Beperkingen die worden toegepast zijn:
- Alleen de huidige database kan weergaven hebben.
- U bent niet aansprakelijk voor het wijzigen van een berekende waarde in een bepaalde weergave.
- Integrity constanten bepalen de functionaliteit van INSERT en DELETE.
- Indexdefinities voor volledige tekst kunnen niet worden toegepast.
- Er kunnen geen tijdelijke weergaven worden gemaakt.
- Tijdelijke tabellen kunnen geen weergaven bevatten.
- Geen associatie met DEFAULT-definities.
- Triggers zoals INSTEAD OF worden geassocieerd met weergaven.
26) Definieer “gecorreleerde subquery’s”.
Een 'gecorreleerde subquery' is een soort subquery, maar een gecorreleerde subquery is afhankelijk van een andere query voor een waarde die wordt geretourneerd. In geval van uitvoering wordt eerst de subquery uitgevoerd en daarna de gecorreleerde query.
27) Definieer datawarehousing.
Opslag en toegang tot gegevens vanaf de centrale locatie om een strategische beslissing te nemen, wordt genoemd Data opslagplaats. Enterprise management wordt gebruikt voor het beheren van de informatie waarvan het raamwerk bekend staat als Data Warehousing.
28) Definieer Join en noem de typen ervan.
Joins helpen bij het uitleggen van de relatie tussen verschillende tabellen. Ze stellen u ook in staat gegevens te selecteren die betrekking hebben op gegevens in een andere tabel.
De verschillende soorten zijn:
- INNER JOIN's: Er worden lege rijen in het midden gelaten, terwijl meer dan twee tabellen worden samengevoegd.
- BUITENSTE JOIN's: Verdeeld in Left Outer Join en Right Outer Join. Er worden lege rijen aan de opgegeven kant gelaten door tabellen aan de andere kant samen te voegen.
Andere joins zijn CROSS JOINs, NATURAL JOINs, EQUI JOIN en NON-EQUI JOIN.
29) Wat bedoel je met indexjacht?
Indexen helpen bij het verbeteren van de snelheid en de queryprestaties van de database. De procedure voor het vergroten van de verzameling indexen wordt Index-jacht genoemd.
30) Hoe helpt het zoeken naar indexen bij het verbeteren van de prestaties van zoekopdrachten?
Indexjacht helpt bij het verbeteren van de snelheid en de queryprestaties van de database. Om dat te bereiken worden de volgende maatregelen bereikt:
- De query-optimalisatie wordt gebruikt om het onderzoek van queries te coördineren met de werklast en om op basis hiervan het beste gebruik van queries te suggereren.
- Index, querydistributie en hun prestaties worden geobserveerd om het effect te controleren.
- Het wordt ook aanbevolen om databases af te stemmen op een kleine verzameling probleemquery's.
Database-interviewvragen en antwoorden voor ervaren
31) Noem de nadelen van vragen.
De nadelen van query zijn:
- Geen indexen
- Opgeslagen procedures zijn overmatig gecompileerd.
- Triggers en procedures zijn zonder SET NOCOUNT ON.
- Ingewikkelde joins die een onvoldoende geschreven vraag vormen.
- Cursors en tijdelijke tabellen laten een slechte presentatie zien.
32) Zorg voor manieren om transacties efficiënt te coderen.
Manieren om transacties efficiënt te coderen:
- Gebruikersinvoer mag niet worden toegestaan tijdens transacties.
- Tijdens het browsen mogen geen transacties met gegevens worden geopend.
- Transacties moeten zo klein mogelijk gehouden worden.
- Lagere niveaus van transactiesegregatie.
- Tijdens het uitvoeren van transacties moet toegang worden verkregen tot de minste informatie over gegevens.
33) Wat is een Executive Plan?
Executive plan kan worden gedefinieerd als:
- SQL Server slaat de verzamelde procedure of het plan voor het uitvoeren van query's op in de cache en wordt daarna gebruikt door volgende oproepen.
- Een belangrijk kenmerk met betrekking tot prestatieverbetering.
- Het gegevensuitvoeringsplan kan tekstueel of grafisch worden bekeken.
34) Definieer B-bomen.
Een datastructuur in de vorm van een boom waarin gesorteerde gegevens worden opgeslagen en zoekopdrachten, invoegingen, sequentiële toegang en verwijderingen zijn toegestaan in logaritmische tijd.
35) Maak onderscheid tussen tabelscan en indexscan.
Het herhalen van alle tabelrijen wordt Tabelscan genoemd, terwijl het herhalen van alle indexitems wordt gedefinieerd als Indexscan.
36) Wat bedoel je met het Fill Factor-concept met betrekking tot indexen?
Vulfactor kan worden gedefinieerd als de waarde die het percentage resterende ruimte op elke pagina op bladniveau definieert dat met gegevens moet worden gevuld. 100 is de standaardwaarde van de vulfactor.
37) Definieer fragmentatie.
Fragmentatie kan worden gedefinieerd als een databasefunctie van een server die de controle over gegevens die op tabelniveau zijn opgeslagen, door de gebruiker bevordert.
38) Maak onderscheid tussen geneste lus, hash-join en merge-join.
Geneste lus (lus over lus)
Er wordt een buitenste lus binnen een binnenste lus gevormd die uit minder ingangen bestaat en vervolgens wordt voor individuele toegang de binnenste lus individueel verwerkt.
bv
- Selecteer col1.*, col2.* uit coll, col2 waarbij coll.col1=col2.col2;
De verwerking vindt als volgt plaats:
Voor i in (selecteer * uit col1) lus
Voor j in (selecteer * uit col2 waarbij col2=i.col1) lus
Resultaten worden weergegeven;
Einde van de lus;
Einde van de lus;
De stappen van geneste lus zijn:
- Identificeer de buitenste (rij)tafel
- Wijs de binnenste (aangedreven) tafel toe aan de buitenste tafel.
- Voor elke rij buitentafels heeft u toegang tot de rijen binnentafels.
Nested Loops wordt van binnen naar buiten uitgevoerd als:
- buitenste_lus
- binnenste_lus
- hash join
Bij het samenvoegen van grote tabellen heeft het gebruik van Hash Join de voorkeur.
Het algoritme van Hash Join is onderverdeeld in:
- Build: Het is een hashtabel met een in-memory die aanwezig is op de kleinere tafel.
- Probe: deze hashwaarde van de hashtabel is van toepassing op elk tweede rij-element.
- Sorteer samenvoeging
Twee onafhankelijke bronnen van gegevens worden samengevoegd in sort merge join. De prestaties zijn beter vergeleken met geneste lussen wanneer het datavolume groot genoeg is, maar het is niet goed als hash joins over het algemeen. De volledige bewerking kan worden verdeeld in twee delen:
Sorteer join-bewerking:
Haal de eerste rij R1 op uit input1
Haal de eerste rij R2 op uit input2.
Samenvoegbewerking:
'while' is niet aanwezig aan het einde van beide lus.
als R1 samenkomt met R2
volgende rij krijgt R2 van ingang 2
retour (R1, R2)
anders als R1 < style=””> volgende rij wordt verkregen van R1 van ingang 1
anders
volgende rij wordt verkregen van R2 van ingang 2
einde van de lus
39) Wat is databasepartitionering?
Het opdelen van een logische database in onafhankelijke complete eenheden om het beheer, de beschikbaarheid en de prestaties ervan te verbeteren, wordt databasepartitionering genoemd.
40) Leg het belang van verdeling uit.
Het opsplitsen van een grote tabel in kleinere database-entiteiten wordt logischerwijs databasepartitionering genoemd. De voordelen zijn:
- Om de queryprestaties te verbeteren in situaties waarin de meeste rijen die intensief worden gebruikt zich in één partitie bevinden.
- Toegang tot grote delen van een enkele partitie
- Voor gegevens die zelden worden gebruikt, kunnen langzamere en goedkopere opslagmedia worden gebruikt.
41) Databasesysteem definiëren.
dbms samen met de database wordt het databasesysteem genoemd.
42) Wat bedoel je met Query-evaluatie-engine?
Query Evaluation Engine voert de instructies op laag niveau uit die door de compiler worden gegenereerd.
43) Definieer DDL-tolk.
DDL-instructies worden geïnterpreteerd en vastgelegd in tabellen die metadata worden genoemd.
44) Definiëren Atomiciteit en aggregatie.
Atomijs: Het is een alles of niets concept waardoor de gebruiker verzekerd is van onvolledige transacties. De acties waarbij onvolledige transacties betrokken zijn, worden in DBMS ongedaan gemaakt.
Aggregatie: De verzamelde entiteiten en hun relatie worden in dit model samengevoegd. Het wordt vooral gebruikt bij het uitdrukken van relaties binnen relaties.
45) Benoem de verschillende transactiefasen.
De verschillende transactiefasen zijn:
- Analyse fase.
- Fase opnieuw uitvoeren
- Fase ongedaan maken
46) Definieer het objectgeoriënteerde model.
Compilaties van objecten vormen dit model waarin waarden worden opgeslagen in instantievariabelen die zich binnen het object bevinden. Het object zelf omvat lichamen van objecten voor zijn werking die methoden worden genoemd. Objecten die dezelfde soort variabelen en methoden bevatten, worden klassen genoemd.
47) Definieer Entiteit.
Het kan worden gedefinieerd als een 'ding' met een onafhankelijk bestaan in de echte wereld.
48) Wat bedoel je met Entiteitstype?
Een reeks vermeldingen met vergelijkbare kenmerken zijn entiteitstypen.
49) Definieer Entiteitenset.
Het compileren van alle vermeldingen van een bepaald type vermelding in de database wordt Entiteitsset genoemd.
50) Wat bedoel je met Entiteitstype-extensie?
Compilatie van vergelijkbare entiteitstypen in één bepaald type dat is gegroepeerd als een entiteitsset.
Deze interviewvragen zullen ook helpen bij je viva (oralen)