Le 50 migliori domande e risposte per interviste sui database (2025)
Ecco le domande e le risposte al colloquio del database per i candidati più freschi ed esperti per ottenere il lavoro dei loro sogni.
Domande e risposte sull'intervista sul database di base per le matricole
1) Definire la banca dati.
Una raccolta preordinata di dati noti come dati è chiamata database.
2) Cos'è il DBMS?
Sistemi di gestione di database (DBMS) sono applicazioni progettate appositamente che consentono l'interazione dell'utente con altre applicazioni.
👉 Download gratuito del PDF: domande e risposte sull'intervista sul database (DBMS) >>
3) Quali sono i vari tipi di interazioni soddisfatte dal DBMS?
I vari tipi di interazioni soddisfatte da DBMS sono:
- Definizione dei dati
- Aggiornanento
- Recupero
- Amministrazione
4) Separare lo sviluppo della tecnologia dei database.
Lo sviluppo della tecnologia dei database si divide in:
- Struttura o modello di dati
- Modello di navigazione
- Modello SQL/relazionale
5) Chi ha proposto il modello relazionale?
Edgar F. Codd propose il modello relazionale nel 1970.
6) Quali sono le caratteristiche del linguaggio Database?
Un linguaggio di database può anche incorporare funzionalità come:
Configurazione e gestione dello storage engine specifico per DBMS
Calcoli per la modifica dei risultati delle query tramite calcoli, come somma, conteggio, media, raggruppamento, ordinamento e riferimenti incrociati Applicazione dei vincoli Interfaccia di programmazione dell'applicazione
7) Cosa fanno i linguaggi di database?
Come linguaggi speciali, hanno:
- Linguaggio di definizione dei dati
- Linguaggio di manipolazione dei dati
- Linguaggio di interrogazione
8) Definire il modello di database.
Un modello di dati che determina fondamentalmente il modo in cui i dati possono essere archiviati, manipolati e organizzati e la struttura logica del database è chiamato modello di database.
9) Cos'è l'SQL?
Linguaggio di query strutturato (SQL) essendo la lingua standard ANSI aggiorna il database e i comandi per l'accesso.
10) Elenca le varie relazioni del database.
Le varie relazioni del database sono:
- Uno a uno: Una singola tabella ha una relazione tracciata con un'altra tabella avente un tipo di colonne simile.
- Uno a molti: Due tabelle con relazione di chiave primaria e esterna.
- Molti a molti: Tabella di giunzione con molte tabelle correlate a molte tabelle.
11) Definire la normalizzazione.
Vengono chiamati dati organizzati privi di dipendenza incoerente e ridondanza all'interno di un database normalizzazione.
12) Elenca i vantaggi della normalizzazione del database.
I vantaggi della normalizzazione del database sono:
- Nessuna voce duplicata
- Risparmia spazio di archiviazione
- Vanta le prestazioni delle query.
13) Definire la denormalizzazione.
L'aumento delle prestazioni del database, tramite l'aggiunta di dati ridondanti che a loro volta aiutano a eliminare dati complessi, è definito denormalizzazione.
14) Definire DDL e DML.
La gestione delle proprietà e degli attributi del database è chiamata Data Definition Language (DDL).
La manipolazione dei dati in un database come l'inserimento, l'aggiornamento, l'eliminazione è definita come linguaggio di manipolazione dei dati. (DML)
15) Inserisci alcuni comandi di DDL.
Essi sono:
CREARE:
Create viene utilizzato nell'istruzione CREATE TABLE. La sintassi è:
CREATE TABLE [column name] ( [column definitions] ) [ table parameters]
ALTERARE:
Aiuta nella modifica di un oggetto esistente del database. La sua sintassi è:
ALTER objecttype objectname parameters.
GOCCIOLARE:
Distrugge un database, un indice, una tabella o una vista esistente. La sua sintassi è:
DROP objecttype objectname.
16) Definire Unione Tutti gli operatori e Unione.
Le registrazioni complete di due tabelle sono l'operatore Union All. Una registrazione distinta di due tabelle è Union.
17) Definire il cursore.
Un oggetto di database che aiuta a manipolare i dati riga per riga che rappresenta un set di risultati è chiamato cursore.
18) Elenca i tipi di cursore.
Essi sono:
- Dinamico: riflette i cambiamenti durante lo scorrimento.
- Statico: non riflette le modifiche durante lo scorrimento e funziona sulla registrazione dell'istantanea.
- Keyset: viene vista la modifica dei dati senza riflettere i nuovi dati.
19) Elenca i tipi di cursore.
I tipi di cursore sono:
- Cursore implicito: Dichiarato automaticamente non appena l'esecuzione di SQL avviene all'insaputa dell'utente.
- Cursore esplicito: Definito da PL/SQL che gestisce la query in più di una riga.
20) Definire la sottoquery.
Una query contenuta in una query è chiamata sottoquery.
21) Perché viene utilizzata la clausola di gruppo?
La clausola di gruppo utilizza valori aggregati da derivare raccogliendo dati simili.
22) Confronta indice non cluster e indice cluster
Entrambi hanno una struttura ad albero B, l'indice non cluster dispone di puntatori dati che abilitano una tabella a molti indici non cluster mentre l'indice cluster è distinto per ogni tabella.
23) Definire le funzioni aggregate.
Le funzioni che operano su una raccolta di valori e restituiscono un singolo valore sono chiamate funzioni aggregate
24) Definire le funzioni scalari.
La funzione scalare dipende dall'argomento fornito e restituisce il solo valore.
25) Quali restrizioni puoi applicare quando crei le visualizzazioni?
Le restrizioni applicate sono:
- Solo il database corrente può avere visualizzazioni.
- Non sei responsabile di modificare alcun valore calcolato in una vista particolare.
- Integrity le costanti decidono la funzionalità di INSERT e DELETE.
- Non è possibile applicare le definizioni dell'indice full-text.
- Non è possibile creare viste temporanee.
- Le tabelle temporanee non possono contenere viste.
- Nessuna associazione con le definizioni DEFAULT.
- Trigger come INSTEAD OF sono associati alle visualizzazioni.
26) Definire le “sottoquery correlate”.
Una "sottoquery correlata" è una sorta di sottoquery ma la sottoquery correlata fa affidamento su un'altra query per un valore restituito. In caso di esecuzione, viene eseguita prima la sottoquery e poi la query correlata.
27) Definire il data warehousing.
Viene chiamato l'archiviazione e l'accesso dei dati dalla posizione centrale al fine di prendere alcune decisioni strategiche Conservazione dei dati. La gestione aziendale viene utilizzata per gestire le informazioni il cui framework è noto come Data Warehousing.
28) Definire Join ed elencarne i tipi.
I join aiutano a spiegare la relazione tra le diverse tabelle. Consentono inoltre di selezionare i dati in relazione ai dati in un'altra tabella.
Le varie tipologie sono:
- JOIN INTERNI: Le righe vuote vengono lasciate al centro mentre vengono unite più tabelle uguali a due.
- JOIN ESTERNI: Diviso in Left Outer Join e Right Outer Join. Le righe vuote vengono lasciate sul lato specificato unendo le tabelle sull'altro lato.
Altri join sono CROSS JOIN, NATURAL JOIN, EQUI JOIN e NON-EQUI JOIN.
29) Cosa intendi per caccia all'indice?
Gli indici aiutano a migliorare la velocità e le prestazioni delle query del database. La procedura per potenziare la raccolta di indici è denominata Index Hunting.
30) In che modo la ricerca dell'indice aiuta a migliorare le prestazioni delle query?
La ricerca dell'indice aiuta a migliorare la velocità e le prestazioni delle query del database. A tale scopo vengono adottate le seguenti misure:
- Il Query Optimizer viene utilizzato per coordinare lo studio delle query con il carico di lavoro e il miglior utilizzo delle query suggerite in base a questo.
- Si osserva l'indice, la distribuzione delle query e le relative prestazioni per verificarne l'effetto.
- Si consiglia inoltre di ottimizzare i database per una piccola raccolta di query problematiche.
Domande e risposte sull'intervista al database per esperti
31) Elenca gli svantaggi della query.
Gli svantaggi della query sono:
- Nessun indice
- Le procedure memorizzate sono eccessivamente compilate.
- I trigger e le procedure sono senza SET NOCOUNT ON.
- Join complicati che costituiscono una query scritta in modo inadeguato.
- I cursori e le tabelle temporanee mostrano una pessima presentazione.
32) Elencare modi per codificare in modo efficiente le transazioni.
Modi per codificare in modo efficiente le transazioni:
- L'input dell'utente non dovrebbe essere consentito durante le transazioni.
- Durante la navigazione non devono essere aperte transazioni di dati.
- Le transazioni devono essere mantenute quanto più piccole possibile.
- Livelli di separazione delle transazioni inferiori.
- Durante la transazione è necessario accedere alla minima informazione sui dati.
33) Cos'è il Piano Esecutivo?
Il piano esecutivo può essere definito come:
- SQL Server memorizza nella cache la procedura raccolta o il piano di esecuzione della query e successivamente utilizzato dalle chiamate successive.
- Una caratteristica importante in relazione al miglioramento delle prestazioni.
- Il piano di esecuzione dei dati può essere visualizzato testualmente o graficamente.
34) Definire gli alberi B.
Una struttura dati sotto forma di albero che memorizza dati ordinati e sono consentite ricerche, inserimenti, accessi sequenziali e cancellazioni in tempo logaritmico.
35) Differenziare la scansione della tabella dalla scansione dell'indice.
L'iterazione su tutte le righe della tabella è denominata Scansione tabella mentre l'iterazione su tutti gli elementi dell'indice è definita Scansione indice.
36) Cosa si intende per concetto di Fill Factor rispetto agli indici?
Il fattore di riempimento può essere definito come quel valore che definisce la percentuale di spazio sinistro su ogni pagina a livello foglia che deve essere riempita di dati. 100 è il valore predefinito del fattore di riempimento.
37) Definire la frammentazione.
La frammentazione può essere definita come una caratteristica del database del server che favorisce il controllo sui dati memorizzati a livello di tabella dall'utente.
38) Differenziare Nested Loop, Hash Join e Merge Join.
Ciclo nidificato (loop su loop)
Si forma un ciclo esterno all'interno di un ciclo interno composto da meno voci e quindi per la voce singola, il ciclo interno viene elaborato individualmente.
Per esempio
- Selezionare col1.*, col2.* da coll, col2 dove coll.col1=col2.col2;
La sua elaborazione avviene in questo modo:
For i nel ciclo (seleziona * da col1).
Per j nel ciclo (seleziona * da col2 dove col2=i.col1).
Vengono visualizzati i risultati;
Fine del ciclo;
Fine del ciclo;
I passaggi del ciclo nidificato sono:
- Identificare il tavolo esterno (di guida).
- Assegna la tabella interna (guidata) alla tabella esterna.
- Per ogni riga della tabella esterna, accedi alle righe della tabella interna.
I cicli nidificati vengono eseguiti dall'interno all'esterno come:
- loop_esterno
- inner_loop
- Hash join
Quando si uniscono tabelle di grandi dimensioni, è preferibile l'uso di Hash Join.
L'algoritmo di Hash Join si divide in:
- Build: è una tabella hash con memoria in memoria presente sulla tabella più piccola.
- Sonda: questo valore hash della tabella hash è applicabile per ogni secondo elemento della riga.
- Ordina unisci unisci
Due origini dati indipendenti vengono unite nell'ordinamento merge join. Le loro prestazioni sono migliori rispetto al ciclo annidato quando il volume dei dati è abbastanza grande, ma non sono buone come gli hash join in generale. L'operazione completa può essere divisa in due parti:
Ordina l'operazione di unione:
Ottieni la prima riga R1 dall'input1
Ottieni la prima riga R2 dall'input2.
Operazione di unione e unione:
'mentre' non è presente alle estremità di nessuno dei due cicli.
se R1 si unisce a R2
la riga successiva ottiene R2 dall'input 2
ritorno (R1, R2)
altrimenti se R1 < style=""> la riga successiva viene ottenuta da R1 dall'input 1
altro
la riga successiva viene ottenuta da R2 dall'input 2
fine del ciclo
39) Cos'è il partizionamento del database?
La divisione del database logico in unità complete indipendenti per migliorarne la gestione, la disponibilità e le prestazioni è chiamata partizionamento del database.
40) Spiegare l'importanza del partizionamento.
La suddivisione di una tabella di grandi dimensioni in entità di database più piccole viene chiamata logicamente partizionamento del database. I suoi vantaggi sono:
- Per migliorare notevolmente le prestazioni delle query in situazioni in cui la maggior parte delle righe a cui si accede frequentemente si trovano in una partizione.
- Accesso a parti estese di una singola partizione
- Per i dati che vengono utilizzati raramente è possibile utilizzare supporti di memorizzazione più lenti ed economici.
41) Definire il sistema di database.
DBMS insieme al database si chiama sistema database.
42) Cosa intendi per Query Evaluation Engine?
Query Evaluation Engine esegue le istruzioni di basso livello generate dal compilatore.
43) Definire l'interprete DDL.
Le istruzioni DDL vengono interpretate e registrate in tabelle chiamate metadati.
44) Definisci AtomICità e Aggregazione.
Atomcittà: È un concetto tutto o niente che consente all'utente di essere certo che le transazioni incomplete siano gestite. Le azioni che coinvolgono transazioni incomplete vengono lasciate annullate nel DBMS.
Aggregazione: Le entità raccolte e la loro relazione sono aggregate in questo modello. Viene utilizzato principalmente per esprimere relazioni all'interno di relazioni.
45) Elenca le varie fasi della transazione.
Le varie fasi della transazione sono:
- Fase di analisi.
- Fase di ripetizione
- Annulla fase
46) Definire il modello orientato agli oggetti.
Compilazioni di oggetti costituiscono questo modello in cui i valori sono archiviati all'interno di variabili di istanza che si trovano all'interno dell'oggetto. L'oggetto stesso comprende corpi di oggetti per il suo funzionamento chiamati metodi. Gli oggetti contenenti lo stesso tipo di variabili e metodi sono chiamati classi.
47) Definire l'entità.
Può essere definito come una "cosa" con un'esistenza indipendente nel mondo reale.
48) Cosa si intende per tipologia di Entità?
Un insieme di voci con attributi simili sono tipi di entità.
49) Definire l'insieme di entità.
La compilazione di tutte le voci di qualsiasi tipo particolare di voce nel database è chiamata Entity Set.
50) Cosa si intende per estensione del tipo di entità?
Compilazione di tipi di entità simili in un tipo particolare raggruppato insieme come un insieme di entità.
Queste domande del colloquio ti aiuteranno anche nel tuo viva(orale)