Le 50 migliori domande e risposte per un'intervista su MySQL (2025)

Domande di intervista su MySQL per matricole ed esperti

Ecco le domande e le risposte al colloquio MySQL per i candidati più freschi ed esperti che vogliono ottenere il lavoro dei loro sogni.

Download gratuito del PDF: domande dell'intervista su MySQL

1) Cos'è MySQL?

MySQL è un sistema di gestione di database (DBMS) open source per la gestione e l'organizzazione dei dati in formato tabellare. Questi dati possono essere manipolati utilizzando il linguaggio di programmazione MySQL. È supportato e distribuito da MySQL AB (ora acquisito da Oracle)


2) Quali sono le caratteristiche tecniche di MySQL?

Il software di database MySQL è un sistema client o server che include

  • Multithread Server SQL supportando vari programmi e librerie client
  • Backend diverso
  • Ampia gamma di interfacce di programmazione delle applicazioni e
  • Strumenti amministrativi.

3) Perché viene utilizzato MySQL?

Il server database MySQL è affidabile, veloce e molto facile da usare. Questo software può essere scaricato come freeware e può essere scaricato da Internet.


4) Cosa sono le tabelle Heap?

Le tabelle HEAP sono presenti in memoria e vengono utilizzate per l'archiviazione temporanea ad alta velocità

base.

• I campi BLOB o TESTO non sono consentiti

• È possibile utilizzare solo gli operatori di confronto =, <,>, = >,=

• AUTO_INCREMENT non è supportato dalle tabelle HEAP

• Gli indici devono essere NON NULL


5) Qual è la porta predefinita per MySQL Server?

La porta predefinita per il server MySQL è 3306.

Domande per l'intervista su MySQL

6) Quali sono i vantaggi di MySQL rispetto a Oracle?

  • MySQL è un software open source disponibile in qualsiasi momento e senza costi aggiuntivi.
  • MySQL è portatile
  • GUI con prompt dei comandi.
  • L'amministrazione è supportata utilizzando MySQL Query Browser

7) Distinguere tra FLOAT e DOUBLE?

Di seguito sono riportate le differenze tra FLOAT e DOUBLE:

• I numeri in virgola mobile vengono memorizzati in FLOAT con una precisione di otto cifre e ha quattro byte.

• I numeri in virgola mobile vengono memorizzati in DOUBLE con una precisione di 18 cifre e hanno otto byte.


 8) Differenziare CHAR_LENGTH e LENGTH?

CHAR_LENGTH è il conteggio dei caratteri mentre LENGTH è il conteggio dei byte. I numeri sono gli stessi per i caratteri latini ma sono diversi per Unicode e altre codifiche.


9) Come rappresentare internamente ENUM e SET?

ENUM e SET vengono utilizzati per rappresentare le potenze di due a causa delle ottimizzazioni dello spazio di archiviazione.


10) Qual è l'utilizzo degli ENUM in MySQL?

ENUM è un oggetto stringa utilizzato per specificare un insieme di valori predefiniti e che può essere utilizzato durante la creazione della tabella.

Create table size(name ENUM('Small', 'Medium','Large');

MySQL.svg


11) Definire REGEXP?

REGEXP è una corrispondenza di modello in cui corrisponde al modello in qualsiasi punto del valore di ricerca.


12) Differenza tra CHAR e VARCHAR?

Di seguito sono riportate le differenze tra CHAR e VARCHAR:

  • I tipi CHAR e VARCHAR differiscono per l'archiviazione e il recupero
  • La lunghezza della colonna CHAR è fissata alla lunghezza dichiarata durante la creazione della tabella. Il valore della lunghezza varia da 1 a 255
  • Quando i valori CHAR vengono memorizzati, vengono riempiti a destra utilizzando spazi fino a una lunghezza specifica. Gli spazi finali vengono rimossi quando vengono recuperati i valori CHAR.

 13) Fornire i tipi di stringa disponibili per la colonna?

I tipi di stringa sono:

  • SET
  • BLOB
  • ENUM
  • CHAR
  • TESTO
  • VARCHAR

14) Come ottenere la versione corrente di MySQL?

SELECT VERSION ();

viene utilizzato per ottenere la versione corrente di MySQL.


 15) Quali motori di archiviazione vengono utilizzati in MySQL?

I motori di archiviazione sono chiamati tipi di tabelle e i dati vengono archiviati in file utilizzando varie tecniche.

La tecnica prevede:

  • Meccanismo di archiviazione
  • Livelli di blocco
  • Indicizzazione
  • Capacità e funzioni.

16) Quali sono i driver in MySQL?

Di seguito sono riportati i driver disponibili in MySQL:

  • Driver PHP
  • JDBC Guidatore
  • Driver ODBC
  • AVVOLGIMENTO C
  • PYTHON Driver
  • Driver PERL
  • Autista RUBINO
  • Driver CAP11PHP
  • Ado.net5.mxj

17) Cosa fa un TIMESTAMP sul tipo di dati UPDATE CURRENT_TIMESTAMP?

La colonna TIMESTAMP viene aggiornata con Zero quando viene creata la tabella. Il modificatore UPDATE CURRENT_TIMESTAMP aggiorna il campo timestamp all'ora corrente ogni volta che si verifica una modifica in altri campi della tabella.


18) Qual è la differenza tra chiave primaria e chiave candidata?

Ogni riga di una tabella è identificata in modo univoco dalla chiave primaria. Esiste una sola chiave primaria per una tabella.

Anche la chiave primaria è una chiave candidata. Per convenzione comune, la chiave candidata può essere designata come primaria e può essere utilizzata per qualsiasi riferimento a chiave esterna.


19) Come si accede a MySql utilizzando la shell Unix?

Possiamo accedere tramite questo comando:

# [mysql dir]/bin/mysql -h hostname -u <UserName> -p <password>

20) Cosa fa myisamchk?

Comprime le tabelle MyISAM, riducendo l'utilizzo del disco o della memoria.


21) Come controlli la dimensione massima di una tabella HEAP?

La dimensione massima della tabella Heal può essere controllata dalla variabile di configurazione MySQL denominata max_heap_table_size.


22) Qual è la differenza tra MyISAM Statico e MyISAM Dinamico?

In MyISAM statico tutti i campi avranno larghezza fissa. La tabella Dynamic MyISAM avrà campi come TEXT, BLOB, ecc. per accogliere i tipi di dati con varie lunghezze.

MyISAM Static sarebbe più facile da ripristinare in caso di corruzione.


23) Cosa sono le tabelle federate?

Tabelle federate che consentono l'accesso alle tabelle situate su altri database su altri server.


24) Cosa succede se una tabella ha una colonna definita come TIMESTAMP?

Il campo Timestamp ottiene il timestamp corrente ogni volta che la riga viene modificata.


25) Cosa succede quando la colonna è impostata su AUTO INCREMENT e se si raggiunge il valore massimo nella tabella?

Smette di incrementare. Eventuali ulteriori inserimenti genereranno un errore, poiché la chiave è già stata utilizzata.


26) Come possiamo sapere quale incremento automatico è stato assegnato all'Ultimo inserimento?

LAST_INSERT_ID restituirà l'ultimo valore assegnato da Auto_increment e non è necessario specificare il nome della tabella.


27) Come vedere tutti gli indici definiti per una tabella?

Gli indici sono definiti per la tabella da:

SHOW INDEX FROM <tablename>;

28) Cosa intendi con % e _ nell'istruzione LIKE?

% corrisponde a 0 o più caratteri, _ è esattamente un carattere nell'istruzione LIKE.


29) Come possiamo convertire tra timestamp Unix e MySQL?

UNIX_TIMESTAMP è il comando che converte dal timestamp MySQL al timestamp Unix

FROM_UNIXTIME è il comando che converte dal timestamp Unix al timestamp MySQL.


30) Cosa sono gli operatori di confronto delle colonne?

Gli operatori = , <>, <=, <, >=, >,<<,>>, <=>, AND, OR o LIKE vengono utilizzati nei confronti di colonne nelle istruzioni SELECT.


 31) Come possiamo ottenere il numero di righe interessate dalla query?

Il numero di righe può essere ottenuto da

SELECT COUNT (user_id) FROM users;

32) La query MySQL fa distinzione tra maiuscole e minuscole?

No.

SELECT VERSION(), CURRENT_DATE;
SeLect version(), current_date;
seleCt vErSiOn(), current_DATE;

Tutti questi esempi sono uguali. Non è case sensitive.


33) Qual è la differenza tra gli operatori LIKE e REGEXP?

Gli operatori LIKE e REGEXP vengono utilizzati per esprimere con ^ e %.

SELECT * FROM employee WHERE emp_name REGEXP "^b";
SELECT * FROM employee WHERE emp_name LIKE "%b";

34) Qual è la differenza tra BLOB E TESTO?

Un BLOB è un oggetto binario di grandi dimensioni che può contenere una quantità variabile di dati. Esistono quattro tipi di BLOB:

  • PICCOLOBLOB
  • BLOB
  • MEDIUMBLOB e
  • LUNGO BLOB

Differiscono tutti solo nella lunghezza massima dei valori che possono contenere.

Un TESTO è un BLOB senza distinzione tra maiuscole e minuscole. I quattro tipi di TESTO

  • PICCOLO TESTO
  • TESTO
  • MEDIO TESTO e
  • TESTO LUNGO

Corrispondono tutti ai quattro tipi BLOB e hanno le stesse lunghezze massime e requisiti di archiviazione.

L'unica differenza tra i tipi BLOB e TEXT è che l'ordinamento e il confronto vengono eseguiti nel caso-delicata per valori BLOB e case-insensibile per i valori di TESTO.


35) Qual è la differenza tra mysql_fetch_array e mysql_fetch_object?

Di seguito sono riportate le differenze tra mysql_fetch_array e mysql_fetch_object:

mysql_fetch_array() -Restituisce una riga di risultato come associata schieramento o un array regolare dal database.

mysql_fetch_object – Restituisce una riga di risultato come oggetto dal database.


36) Come possiamo eseguire la modalità batch in mysql?

I seguenti comandi vengono utilizzati per l'esecuzione in modalità batch:

mysql ;
mysql mysql.out

37) Dove verrà archiviata la tabella MyISAM e verranno forniti anche i relativi formati di archiviazione?

Ogni tabella MyISAM è archiviata su disco in tre formati:

  • Il file '.frm' memorizza la definizione della tabella
  • Il file di dati ha un'estensione '.MYD' (MYData).
  • Il file indice ha un'estensione '.MYI' (MYIndex).

38) Quali sono le diverse tabelle presenti in MySQL?

Sono presenti in totale 5 tipi di tabelle:

  • Il mio ISAM
  • Heap
  • Unire
  • INNO DB
  • ISAM

MyISAM è il motore di archiviazione predefinito a partire da MySQL.


39) Cos'è l'ISAM?

ISAM è abbreviato come Indexed Sequential Access Method. È stato sviluppato da IBM per archiviare e recuperare dati su sistemi di archiviazione secondari come i nastri.


40) Cos'è InnoDB?

lnnoDB è un motore di archiviazione sicura per le transazioni sviluppato da Innobase Oy, che ora è una Oracle Corporation.


41) In che modo MySQL ottimizza DISTINCT?

DISTINCT viene convertito in GRUPPO BY su tutte le colonne e verrà combinato con la clausola ORDER BY.

SELECT DISTINCT t1.a FROM t1,t2 where t1.a=t2.a;

42) Come inserire i caratteri come numeri esadecimali?

Se desideri inserire i caratteri come numeri esadecimali, puoi inserire i numeri esadecimali con virgolette singole e un prefisso (X) o semplicemente prefissare i numeri esadecimali con (Ox).

Una stringa di numeri HEX verrà automaticamente convertita in una stringa di caratteri, se il contesto dell'espressione è una stringa.


43) Come visualizzare le prime 50 righe?

In MySql, le prime 50 righe vengono visualizzate utilizzando la seguente query:

SELECT * FROM
LIMIT 0,50;

44) Quante colonne possono essere utilizzate per creare l'indice?

È possibile creare un massimo di 16 colonne indicizzate per qualsiasi tabella standard.


45) Qual è la differenza tra NOW() e CURRENT_DATE()?

Il comando NOW () viene utilizzato per mostrare l'anno, il mese e la data correnti con ore, minuti e secondi.

CURRENT_DATE() mostra solo l'anno, il mese e la data correnti.


46) Quali sono gli oggetti che possono essere creati utilizzando l'istruzione CREATE?

I seguenti oggetti vengono creati utilizzando l'istruzione CREATE:

  • DATABASE
  • EVENTO
  • FUNZIONE
  • INDICE
  • PROCEDURA
  • TABELLA
  • TRIGGER
  • UTENTE
  • VISTA

47) Quanti TRIGGERS sono ammessi nella tabella MySql?

Nella tabella MySql sono consentiti SEI trigger. Sono i seguenti:

  • PRIMA DI INSERIRE
  • DOPO L'INSERIMENTO
  • PRIMA DI AGGIORNARE
  • DOPO L'AGGIORNAMENTO
  • PRIMA DI ELIMINARE e
  • DOPO ELIMINARE

48) Quali sono i tipi di stringa non standard?

Di seguito sono riportati i tipi di stringa non standard:

  • PICCOLO TESTO
  • TESTO
  • TESTO MEDIO
  • TESTO LUNGO

49) Quali sono tutte le funzioni SQL comuni?

CONCAT(A, B) – Concatena due valori stringa per creare un singolo output di stringa. Spesso utilizzato per combinare due o più campi in un unico campo.

FORMAT(X, D) – Formatta il numero da X a D cifre significative.

CURRDATE(), CURRTIME() – Restituisce la data o l'ora corrente.

ADESSO() – Restituisce la data e l'ora correnti come un unico valore.

MESE(), GIORNO(), ANNO(), SETTIMANA(), GIORNO SETTIMANA() – Estrae i dati forniti da un valore di data.

ORA(), MINUTO(), SECONDO() – Estrae i dati forniti da un valore temporale.

DATEDIFF(A, B) – Determina la differenza tra due date ed è comunemente utilizzato per calcolare l'età

SUBTIMES(A, B) – Determina la differenza tra due tempi.

FROMDAYS(INT) – Converte un numero intero di giorni in un valore di data.


50) Spiegare gli elenchi di controllo degli accessi.

Un ACL (Access Control List) è un elenco di autorizzazioni associate a un oggetto. Questo elenco costituisce la base per il modello di sicurezza del server MySQL e aiuta a risolvere problemi come l'incapacità degli utenti di connettersi.

MySQL mantiene le ACL (chiamate anche tabelle di concessione) nella cache in memoria. Quando un utente tenta di autenticarsi o eseguire un comando, MySQL controlla le informazioni di autenticazione e le autorizzazioni rispetto alle ACL, in un ordine predeterminato.

Queste domande del colloquio ti aiuteranno anche nel tuo viva(orale)

Condividi

Commenti

  1. Avatar Ramesh Tiwari dice:

    molto bella... raccolta... ma per favore aggiornalo come motore predefinito in Innodb adesso

  2. sudhanshu tewari dice:

    ottime domande per un'intervista pratica da risolvere.. grazie

  3. Avatar Shubham Soleggiato dice:

    Post molto informativo. La maggior parte delle domande mi sono già state poste nelle mie interviste. Grazie

  4. Bell'articolo. Continua a condividere

  5. Posso spegnere il d; che gli strumenti Gui aggiungono alla fine di OGNI istruzione select

  6. Avatar Rasheed Ur Rehman dice:

    Bell'articolo. Ma mancano le domande di partecipazione che sono molto importanti

  7. Avatar vecchio caro cinco dice:

    Perché è importante MySQL? *
    La tua risposta

  8. Avatar Manoj kumar dice:

    Nelle domande sui join e sui cluster mancano le domande più comuni poste durante l'intervista

  9. Avatar MD danese dice:

    Bel contenuto per la base dell'intervista...
    Ma qui mancano le istruzioni join e case... contenuti quasi molto buoni..

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *