Top 50 des questions et réponses d'entretien avec MySQL (2024)
Questions d'entretien MySQL pour débutants et expérimentés
Voici les questions et réponses d'entretien MySQL pour les candidats les plus frais et les plus expérimentés pour obtenir l'emploi de leurs rêves.
Téléchargement gratuit du PDF : Questions d'entretien MySQL
1) Qu'est-ce que MySQL ?
MySQL est un système de gestion de base de données (SGBD) open-source permettant de gérer et d'organiser les données sous forme de tableau. Ces données peuvent être manipulées à l'aide du langage de programmation MySQL. Il est pris en charge et distribué par MySQL AB (maintenant acquis par Oracle)
2) Quelles sont les fonctionnalités techniques de MySQL ?
Le logiciel de base de données MySQL est un système client ou serveur qui comprend
- Multithread Serveur SQL prise en charge de divers programmes clients et bibliothèques
- Back-end différent
- Large gamme d'interfaces de programmation d'applications et
- Outils administratifs.
3) Pourquoi MySQL est-il utilisé ?
Le serveur de base de données MySQL est fiable, rapide et très facile à utiliser. Ce logiciel peut être téléchargé en tant que logiciel gratuit et peut être téléchargé à partir d'Internet.
4) Que sont les tables Heap ?
Les tables HEAP sont présentes en mémoire et sont utilisées pour le stockage à grande vitesse sur des
base.
• Les champs BLOB ou TEXT ne sont pas autorisés
• Seuls les opérateurs de comparaison peuvent être utilisés =, <,>, = >,=
• AUTO_INCREMENT n'est pas pris en charge par les tables HEAP
• Les index doivent être NOT NULL
5) Quel est le port par défaut du serveur MySQL ?
Le port par défaut du serveur MySQL est 3306.
6) Quels sont les avantages de MySQL par rapport à Oracle ?
- MySQL est un logiciel open source disponible à tout moment et sans frais.
- MySQL est portable
- Interface graphique avec invite de commande.
- L'administration est prise en charge à l'aide du navigateur de requêtes MySQL
7) Faire la différence entre FLOAT et DOUBLE ?
Voici les différences entre FLOAT et DOUBLE :
• Les nombres à virgule flottante sont stockés dans FLOAT avec une précision de huit chiffres et il comporte quatre octets.
• Les nombres à virgule flottante sont stockés dans DOUBLE avec une précision de 18 emplacements et il a huit octets.
8) Différencier CHAR_LENGTH et LENGTH ?
CHAR_LENGTH est le nombre de caractères alors que LENGTH est le nombre d'octets. Les nombres sont les mêmes pour les caractères latins mais ils sont différents pour Unicode et les autres encodages.
9) Comment représenter les ENUM et les SET en interne ?
Les ENUM et les SET sont utilisés pour représenter les puissances de deux en raison des optimisations de stockage.
10) Quelle est l'utilisation des ENUM dans MySQL ?
ENUM est un objet chaîne utilisé pour spécifier un ensemble de valeurs prédéfinies et qui peut être utilisé lors de la création de la table.
Create table size(name ENUM('Small', 'Medium','Large');
11) Définir REGEXP ?
REGEXP est une correspondance de modèle dans laquelle correspond le modèle n'importe où dans la valeur de recherche.
12) Différence entre CHAR et VARCHAR ?
Voici les différences entre CHAR et VARCHAR :
- Les types CHAR et VARCHAR diffèrent dans le stockage et la récupération
- La longueur de la colonne CHAR est fixée à la longueur déclarée lors de la création de la table. La valeur de longueur est comprise entre 1 et 255
- Lorsque les valeurs CHAR sont stockées, elles sont remplies à droite en utilisant des espaces à une longueur spécifique. Les espaces de fin sont supprimés lorsque les valeurs CHAR sont récupérées.
13) Donnez les types de chaînes disponibles pour la colonne ?
Les types de chaîne sont :
- SET
- BLOB
- ENUM
- CARBONISER
- TEXTE
- VARCHAR
14) Comment obtenir la version actuelle de MySQL ?
SELECT VERSION ();
est utilisé pour obtenir la version actuelle de MySQL.
15) Quels moteurs de stockage sont utilisés dans MySQL ?
Les moteurs de stockage sont appelés types de table et les données sont stockées dans des fichiers à l'aide de diverses techniques.
La technique implique :
- Mécanisme de stockage
- Niveaux de verrouillage
- Indexage
- Capacités et fonctions.
16) Quels sont les pilotes de MySQL ?
Voici les pilotes disponibles dans MySQL :
- Pilote PHP
- JDBC Chauffeur
- Pilote ODBC
- C ENVELOPPEUR
- Pilote PYTHON
- Pilote PERL
- Pilote RUBIS
- Pilote CAP11PHP
- Ado.net5.mxj
17) Que fait un TIMESTAMP sur le type de données UPDATE CURRENT_TIMESTAMP ?
La colonne TIMESTAMP est mise à jour avec zéro lorsque la table est créée. Le modificateur UPDATE CURRENT_TIMESTAMP met à jour le champ d'horodatage à l'heure actuelle chaque fois qu'il y a un changement dans d'autres champs de la table.
18) Quelle est la différence entre clé primaire et clé candidate ?
Chaque ligne d'une table est identifiée de manière unique par une clé primaire. Il n'y a qu'une seule clé primaire pour une table.
La clé primaire est également une clé candidate. Par convention commune, la clé candidate peut être désignée comme primaire et qui peut être utilisée pour toutes les références de clé étrangère.
19) Comment vous connectez-vous à MySql en utilisant le shell Unix ?
Nous pouvons nous connecter via cette commande :
# [mysql dir]/bin/mysql -h hostname -u <UserName> -p <password>
20) Que fait myisamchk ?
Il compresse les tables MyISAM, ce qui réduit leur utilisation du disque ou de la mémoire.
21) Comment contrôlez-vous la taille maximale d'une table HEAP ?
La taille maximale de la table Heal peut être contrôlée par la variable de configuration MySQL appelée max_heap_table_size.
22) Quelle est la différence entre MyISAM Static et MyISAM Dynamic ?
Dans MyISAM static, tous les champs auront une largeur fixe. La table Dynamic MyISAM aura des champs comme TEXT, BLOB, etc. pour accueillir les types de données de différentes longueurs.
MyISAM Static serait plus facile à restaurer en cas de corruption.
23) Que sont les tables fédérées ?
Tables fédérées qui permettent d'accéder aux tables situées sur d'autres bases de données sur d'autres serveurs.
24) Que se passe-t-il si une table a une colonne définie comme TIMESTAMP ?
Le champ Horodatage obtient l'horodatage actuel chaque fois que la ligne est modifiée.
25) Que se passe-t-il lorsque la colonne est définie sur AUTO INCREMENT et si vous atteignez la valeur maximale dans le tableau ?
Il arrête de s'incrémenter. Toute autre insertion va produire une erreur, car la clé a déjà été utilisée.
26) Comment savoir quelle incrémentation automatique a été attribuée lors de la dernière insertion ?
LAST_INSERT_ID renverra la dernière valeur attribuée par Auto_increment et il n'est pas nécessaire de spécifier le nom de la table.
27) Comment pouvez-vous voir tous les index définis pour une table ?
Les index sont définis pour la table par :
SHOW INDEX FROM <tablename>;
28) Que voulez-vous dire par % et _ dans l'instruction LIKE ?
% correspond à 0 ou plusieurs caractères, _ est exactement un caractère dans l'instruction LIKE.
29) Comment pouvons-nous convertir entre les horodatages Unix et MySQL ?
UNIX_TIMESTAMP est la commande qui convertit l'horodatage MySQL en horodatage Unix
FROM_UNIXTIME est la commande qui convertit l'horodatage Unix en horodatage MySQL.
30) Quels sont les opérateurs de comparaison de colonnes ?
Les opérateurs = , <>, <=, <, >=, >,<<,>>, <=>, AND, OR ou LIKE sont utilisés dans les comparaisons de colonnes dans les instructions SELECT.
31) Comment obtenir le nombre de lignes affectées par la requête ?
Le nombre de lignes peut être obtenu par
SELECT COUNT (user_id) FROM users;
32) La requête Mysql est-elle sensible à la casse ?
No.
SELECT VERSION(), CURRENT_DATE; SeLect version(), current_date; seleCt vErSiOn(), current_DATE;
Tous ces exemples sont identiques. Il n'est pas sensible à la casse.
33) Quelle est la différence entre les opérateurs LIKE et REGEXP ?
Les opérateurs LIKE et REGEXP sont utilisés pour exprimer avec ^ et %.
SELECT * FROM employee WHERE emp_name REGEXP "^b"; SELECT * FROM employee WHERE emp_name LIKE "%b";
34) Quelle est la différence entre BLOB ET TEXTE ?
Un BLOB est un grand objet binaire qui peut contenir une quantité variable de données. Il existe quatre types de BLOB -
- PETIT BLOB
- BLOB
- MEDIUMBLOB et
- LONGBLOB
Ils ne diffèrent tous que par la longueur maximale des valeurs qu'ils peuvent contenir.
Un TEXTE est un BLOB insensible à la casse. Les quatre types de TEXTE
- TINYTEXTE
- TEXTE
- TEXTE MOYEN et
- LONGTEXTE
Ils correspondent tous aux quatre types de BLOB et ont les mêmes longueurs maximales et exigences de stockage.
La seule différence entre les types BLOB et TEXT est que le tri et la comparaison sont effectués en cassensible pour les valeurs BLOB et le cas-insensible pour les valeurs TEXTE.
35) Quelle est la différence entre mysql_fetch_array et mysql_fetch_object ?
Voici les différences entre mysql_fetch_array et mysql_fetch_object :
mysql_fetch_array() - Renvoie une ligne de résultat en tant qu'associée tableau ou un tableau régulier de la base de données.
mysql_fetch_object - Renvoie une ligne de résultat en tant qu'objet de la base de données.
36) Comment pouvons-nous exécuter le mode batch dans mysql ?
Les commandes suivantes sont utilisées pour s'exécuter en mode batch :
mysql ; mysql mysql.out
37) Où la table MyISAM sera-t-elle stockée et également donner leurs formats de stockage ?
Chaque table MyISAM est stockée sur disque sous trois formats :
- Le fichier '.frm' stocke la définition de la table
- Le fichier de données a une extension '.MYD' (MYData)
- Le fichier d'index a une extension '.MYI' (MYIndex)
38) Quelles sont les différentes tables présentes dans MySQL ?
Au total 5 types de tableaux sont présents :
- MyISAM
- Heap
- aller
- BD INNO
- ISAM
MyISAM est le moteur de stockage par défaut de MySQL.
39) Qu'est-ce que l'ISAM ?
ISAM est abrégé en méthode d'accès séquentiel indexé. Il a été développé par IBM pour stocker et récupérer des données sur des systèmes de stockage secondaires tels que des bandes.
40) Qu'est-ce qu'InnoDB ?
lnnoDB est un moteur de stockage sécurisé pour les transactions développé par Innobase Oy, qui est maintenant une société Oracle.
41) Comment MySQL optimise DISTINCT ?
DISTINCT est converti en GROUP BY sur toutes les colonnes et sera combiné avec la clause ORDER BY.
SELECT DISTINCT t1.a FROM t1,t2 where t1.a=t2.a;
42) Comment saisir des caractères sous forme de nombres HEX ?
Si vous souhaitez saisir des caractères sous forme de nombres HEX, vous pouvez entrer des nombres HEX avec des guillemets simples et un préfixe de (X), ou simplement préfixer des nombres HEX avec (Ox).
Une chaîne numérique HEX sera automatiquement convertie en chaîne de caractères, si le contexte de l'expression est une chaîne.
43) Comment afficher les 50 premières lignes ?
Dans MySql, les 50 premières lignes sont affichées à l'aide de la requête suivante :
SELECT * FROM LIMIT 0,50;
44) Combien de colonnes peut-on utiliser pour créer l'index ?
Un maximum de 16 colonnes indexées peuvent être créées pour n'importe quelle table standard.
45) Quelle est la différence entre NOW() et CURRENT_DATE() ?
La commande NOW () est utilisée pour afficher l'année, le mois, la date en cours avec les heures, les minutes et les secondes.
CURRENT_DATE() affiche uniquement l'année, le mois et la date en cours.
46) Quels sont les objets pouvant être créés à l'aide de l'instruction CREATE ?
Les objets suivants sont créés à l'aide de l'instruction CREATE :
- BASE DE DONNÉES
- EVENT
- FONCTION
- INDEX
- PROCÉDURE
- TABLE
- TRIGGER
- UTILISATEUR
- VOIR
47) Combien de TRIGGERS sont autorisés dans la table MySql ?
Les déclencheurs SIX sont autorisés dans la table MySql. Ils sont les suivants :
- AVANT INSÉRER
- APRÈS INSERTION
- AVANT LA MISE À JOUR
- APRÈS LA MISE À JOUR
- AVANT DE SUPPRIMER et
- APRÈS SUPPRIMER
48) Quels sont les types de chaînes non standard ?
Voici les types de chaînes non standard :
- TINYTEXTE
- TEXTE
- TEXTE MOYEN
- LONGTEXTE
49) Quelles sont toutes les fonctions SQL communes ?
CONCAT(A, B) – Concatène deux valeurs de chaîne pour créer une seule sortie de chaîne. Souvent utilisé pour combiner deux champs ou plus en un seul champ.
FORMAT(X, D) – Formate le nombre X à D chiffres significatifs.
CURRDATE(), CURRTIME() – Renvoie la date ou l'heure actuelle.
NOW() - Renvoie la date et l'heure actuelles sous la forme d'une seule valeur.
MONTH(), DAY(), YEAR(), WEEK(), WEEKDAY() – Extrait les données données d'une valeur de date.
HOUR(), MINUTE(), SECOND() – Extrait les données données d'une valeur temporelle.
DATEDIFF(A, B) – Détermine la différence entre deux dates et est couramment utilisé pour calculer l'âge
SUBTIMES(A, B) – Détermine la différence entre deux temps.
FROMDAYS(INT) – Convertit un nombre entier de jours en une valeur de date.
50) Expliquer les listes de contrôle d'accès.
Une ACL (Access Control List) est une liste d'autorisations associées à un objet. Cette liste est la base du modèle de sécurité du serveur MySQL et aide à résoudre les problèmes tels que les utilisateurs ne pouvant pas se connecter.
MySQL conserve les ACL (également appelées tables de droits) en cache en mémoire. Lorsqu'un utilisateur essaie de s'authentifier ou d'exécuter une commande, MySQL vérifie les informations d'authentification et les autorisations par rapport aux ACL, dans un ordre prédéterminé.
Ces questions d'entretien vous aideront également dans votre soutenance
très belle… collection… mais s'il vous plaît mettez à jour comme moteur par défaut dans Innodb maintenant
Le fichier pdf n'a qu'une page
très bonnes questions pour un parctice to crack interview .. merci
Poste très informatif. La plupart des questions me sont déjà posées dans mes entretiens. Merci
c'est utile pour l'entretien
Bel article. Continuez à partager
Puis-je désactiver le d; que les outils Gui ajoutent à la fin de CHAQUE instruction select
C'est une aide complète
Bel article. Mais rejoindre les requêtes Question manquantes qui sont très importantes
Merci beaucoup
Comment trouver MySQL important ? *
Ta Réponse
La question des jointures et des clusters manque la question la plus fréquemment posée lors de l'entretien
Contenu sympa pour base d’interview…
Mais les instructions join et case manquent ici… un contenu presque très bon.