top 50 database interview questions
Questions et réponses les plus fréquemment posées lors des entretiens avec la base de données:
Cet article couvrira une liste de toutes les questions et réponses d'entrevue «base de données» les plus importantes et les plus fréquemment posées, ce qui vous aidera à résoudre n'importe quel entretien.
Des compétences organisationnelles, une forte capacité de résolution de problèmes, une attention aux détails et un haut niveau de précision, sont quelques-unes des qualités essentielles qu'une personne doit posséder pour être dans le 'Base de données' domaine.
Bien que vous devriez être mis à jour avec les dernières tendances de l'industrie, vos bases doivent également être solides, d'autre part. Afin de commencer votre carrière dans la base de données, la première chose essentielle que vous devez avoir est la connaissance du SGBD (système de gestion de base de données) et SQL (langage de requête structurée).
Questions et réponses aux entrevues de base de données les plus populaires
Vous trouverez ci-dessous une liste des questions et réponses les plus populaires pour les entretiens de base de données à titre de référence.
Q # 1) Qu'entendez-vous par «base de données»?
Répondre: La base de données est une collection organisée de données connexes où les données sont stockées et organisées pour servir un objectif spécifique.
Par exemple , Un bibliothécaire maintient une base de données de toutes les informations relatives aux livres disponibles dans la bibliothèque.
Q # 2) Définissez le SGBD.
Répondre: DBMS signifie système de gestion de base de données. Il s'agit d'un ensemble de programmes d'application qui permettent à l'utilisateur d'organiser, de restaurer et de récupérer des informations sur les données de manière efficace et aussi efficace que possible.
Certains des SGBD populaires sont MySql, Oracle, Sybase, etc.
Q # 3) Définissez le SGBDR.
Répondre: Le système de gestion de base de données relationnelle (SGBDR) est basé sur un modèle relationnel de données qui sont stockées dans des bases de données dans des tables séparées et qui sont liées à l'utilisation d'une colonne commune. Les données sont facilement accessibles à partir de la base de données relationnelle à l'aide du langage SQL (Structured Query Language).
Q # 4) Demandez les avantages du SGBD.
Réponse: Les avantages du SGBD comprennent:
- Les données sont stockées de manière structurée et la redondance est donc contrôlée.
- Valide les données saisies et fournit des restrictions sur l'accès non autorisé à la base de données.
- Fournit la sauvegarde et la récupération des données si nécessaire.
- Il fournit plusieurs interfaces utilisateur.
Q # 5) Qu'entendez-vous par redondance des données?
Répondre: La duplication des données dans la base de données est appelée redondance des données. En raison de la redondance des données, des données dupliquées sont présentes à plusieurs endroits, ce qui entraîne un gaspillage de l'espace de stockage et l'intégrité de la base de données est détruite.
Q # 6) Quels sont les différents types de relations dans la base de données? Définissez-les.
Réponse: Il existe 3 types de relations dans la base de données:
- Un par un: Une table a une relation avec une autre table ayant le même type de colonne. Chaque clé primaire ne concerne qu'un seul ou aucun enregistrement dans la table associée.
- Un-à-plusieurs: Une table a une relation avec une autre table qui a des relations de clé primaire et étrangère. La table de clé primaire ne contient qu'un seul enregistrement qui ne concerne aucun, un ou plusieurs enregistrements de la table associée.
- Plusieurs à plusieurs: Chaque enregistrement dans les deux tables peut se rapporter à de nombreux nombres d'enregistrements dans une autre table.
Q # 7) Expliquez la normalisation et la dénormalisation.
Répondre:
Normalisation est le processus de suppression des données redondantes de la base de données en fractionnant la table d'une manière bien définie afin de maintenir l'intégrité des données. Ce processus économise une grande partie de l'espace de stockage.
Dé-normalisation est le processus d'addition de données redondantes sur la table afin d'accélérer les requêtes complexes et ainsi obtenir de meilleures performances.
Q # 8) Quels sont les différents types de normalisation?
Réponse: Les différents types de normalisation sont:
- Première forme normale (1NF): Une relation est dite en 1NF uniquement lorsque toutes les entités de la table contiennent des valeurs uniques ou atomiques.
- Deuxième forme normale (2NF): Une relation est dite en 2NF uniquement si elle est en 1NF et que tout l'attribut non clé de la table dépend entièrement de la clé primaire.
- Troisième forme normale (3NF): Une relation est dite être dans 3NF seulement si elle est dans 2NF et chaque attribut non clé de la table n'est pas transitivement dépendant de la clé primaire.
Q # 9) Qu'est-ce que le BCNF?
Répondre: BCNF est la forme Boyce Code Normal. Il s'agit de la version supérieure de 3Nf qui n'a pas de multiples clés candidates qui se chevauchent.
Q # 10) Qu'est-ce que SQL?
Répondre: Langage de requête structuré, SQL est un langage de programmation standard ANSI (American National Standard Institute) spécialement conçu pour stocker et gérer les données dans le système de gestion de base de données relationnelle (SGBDR) en utilisant toutes sortes d'opérations de données.
Q # 11) Combien d'instructions SQL sont utilisées? Définissez-les.
Répondre: Les instructions SQL sont essentiellement divisées en trois catégories, DDL, DML et DCL.
Ils peuvent être définis comme:
- Langage de définition de données (DDL) Les commandes sont utilisées pour définir la structure qui contient les données. Ces commandes sont validées automatiquement, c'est-à-dire que les modifications effectuées par les commandes DDL sur la base de données sont enregistrées de manière permanente.
- Langage de manipulation de données (DML) Les commandes sont utilisées pour manipuler les données de la base de données. Ces commandes ne sont pas validées automatiquement et peuvent être annulées.
- Langage de contrôle des données (DCL) Les commandes sont utilisées pour contrôler la visibilité des données dans la base de données, comme la révocation de l'autorisation d'accès pour l'utilisation des données dans la base de données.
Q # 12) Enregistrez certaines commandes de DDL, DML et DCL.
Réponse: Commandes DDL (Data Definition Language):
- CREATE pour créer une nouvelle table ou base de données.
- ALTER pour modification.
- TRUNCATE pour supprimer des données de la table.
- DROP pour supprimer une table.
- RENAME pour renommer une table.
Commandes DML (Data Manipulation Language):
- INSERT pour insérer une nouvelle ligne.
- UPDATE pour mettre à jour une ligne existante.
- DELETE pour supprimer une ligne.
- MERGE pour fusionner deux lignes ou deux tables.
Commandes DCL (Data Control Language):
- ENGAGEZ-VOUS à enregistrer définitivement.
- ROLLBACK pour annuler la modification.
- SAVEPOINT pour enregistrer temporairement.
Q # 13) Définissez le compilateur DML.
Répondre: Le compilateur DML traduit les instructions DML dans un langage de requête en une instruction de bas niveau et l'instruction générée peut être comprise par le moteur d'évaluation des requêtes.
Q # 14) Qu'est-ce que l'interpréteur DDL?
Répondre: L'interpréteur DDL interprète les instructions DDL et enregistre les instructions générées dans la table contenant les métadonnées.
Q # 15) Demandez les avantages de SQL.
Réponse: Les avantages de SQL sont:
- Des requêtes SQL simples peuvent être utilisées pour récupérer une grande quantité de données de la base de données très rapidement et efficacement.
- SQL est facile à apprendre et presque tous les SGBD prennent en charge SQL.
- Il est plus facile de gérer la base de données à l'aide de SQL car aucune quantité importante de codage n'est requise.
Q # 16) Expliquez les termes «enregistrement», «champ» et «tableau» en termes de base de données.
Répondre:
Record: L'enregistrement est une collection de valeurs ou de champs d'une entité spécifique. Par exemple, Un employé, un compte de salaire, etc.
Domaine: Un champ fait référence à une zone dans un enregistrement qui est réservée à des données spécifiques. Par exemple, ID d'employé.
Table: Table est la collection d'enregistrements de types spécifiques. Par exemple, la table Employé est une collection d'enregistrements liés à tous les employés.
Q # 17) Qu'entendez-vous par indépendance des données? Quels sont ses deux types?
Répondre: L'indépendance des données fait référence à la possibilité de modifier la définition de schéma dans un niveau de telle manière qu'elle n'affecte pas la définition de schéma dans le niveau supérieur suivant.
Les 2 types d'indépendance des données sont:
applications pour espionner un autre téléphone
- Indépendance des données physiques : Il modifie le schéma au niveau physique sans affecter le schéma au niveau conceptuel.
- Indépendance des données logiques: Il modifie le schéma au niveau conceptuel sans affecter ni provoquer de changements dans le schéma au niveau de la vue.
Q # 18) Définissez la relation entre «Affichage» et «Indépendance des données».
Répondre: View est une table virtuelle qui ne possède pas ses propres données, mais les données sont définies à partir d'une ou plusieurs tables de base sous-jacentes.
Les vues représentent l'indépendance logique des données car la croissance et la restructuration des tables de base ne sont pas reflétées dans les vues.
Q # 19) Quels sont les avantages et les inconvénients des vues dans la base de données?
Réponse: Avantages des vues:
- Comme il n'y a pas d'emplacement physique où les données de la vue sont stockées, il génère une sortie sans gaspiller de ressources.
- L'accès aux données est restreint car il n'autorise pas les commandes telles que l'insertion, la mise à jour et la suppression.
Inconvénients des vues:
- La vue devient inutile si nous supprimons une table liée à cette vue.
- Une grande quantité d'espace mémoire est occupée lorsque la vue est créée pour de grandes tables.
Q # 20) Qu'entendez-vous par dépendance fonctionnelle?
Répondre: Une relation est dite en dépendance fonctionnelle lorsqu'un attribut définit de manière unique un autre attribut.
Par exemple, R est une relation, X et Y sont deux attributs. T1 et T2 sont deux tuples. Puis,
T1 (X) = T2 (X) et T1 (Y) = T2 (Y)
Cela signifie que la valeur du composant X définit de manière unique la valeur du composant Y.
De plus, X-> Y signifie que Y dépend fonctionnellement de X.
Q # 21) Quand dit-on que la dépendance fonctionnelle est la dépendance entièrement fonctionnelle?
Répondre: Pour remplir les critères de dépendance pleinement fonctionnelle, la relation doit répondre à l'exigence de dépendance fonctionnelle.
Une dépendance fonctionnelle «A» et «B» est dite entièrement dépendante fonctionnelle lorsque la suppression d’un attribut «X» de «A» signifie que la dépendance ne tient plus.
Q # 22) Qu'entendez-vous par le modèle E-R?
Répondre: Le modèle E-R est un modèle Entité-Relation qui définit la vue conceptuelle de la base de données.
Le modèle E-R montre essentiellement les entités du monde réel et leurs associations / relations. Les entités représentent ici l'ensemble des attributs de la base de données.
Q # 23) Définissez l'entité, le type d'entité et l'ensemble d'entités.
Répondre:
Entité peut être n'importe quoi, que ce soit un lieu, une classe ou un objet qui a une existence indépendante dans le monde réel.
Type d'entité représente un ensemble d'entités qui ont des attributs similaires.
Ensemble d'entités dans la base de données représente une collection d'entités ayant un type d'entité particulier.
Q # 24) Définissez un ensemble d'entités faibles.
Répondre: L'ensemble d'entités faibles est celui dont la clé primaire comprend sa clé partielle ainsi que la clé primaire de son entité parente. C'est le cas car l'ensemble d'entités peut ne pas avoir suffisamment d'attributs pour former une clé primaire.
Q # 25) Expliquez les termes «attribut» et «relations»
Répondre:
Attribut est décrit comme les propriétés ou les caractéristiques d'une entité. Par exemple , L'ID d'employé, le nom de l'employé, l'âge, etc. peuvent être des attributs de l'entité Employé.
Relation est un tableau bidimensionnel contenant un certain nombre de lignes et de colonnes où chaque ligne représente un enregistrement de la relation. Ici, les lignes sont également appelées «tuples» et les colonnes sont appelées «attributs».
Q # 26) Que sont VDL et SDL?
Réponse: VDL est le langage de définition de vue qui représente les vues utilisateur et leur correspondance avec le schéma conceptuel.
SDL est le langage de définition de stockage qui spécifie le mappage entre deux schémas.
Q # 27) Définissez le curseur et ses types.
Répondre: Le curseur est une zone de travail temporaire qui stocke les données, ainsi que l'ensemble de résultats, survenus après la manipulation des données récupérées. Un curseur ne peut contenir qu'une seule ligne à la fois.
Les 2 types de curseurs sont:
- Curseurs implicites sont déclarées automatiquement lorsque des instructions DML telles que INSERT, UPDATE, DELETE sont exécutées.
- Curseurs explicites doivent être déclarées lorsque des instructions SELECT qui renvoient plus d'une ligne sont exécutées.
Q # 28) Quelle est la transaction de base de données?
Répondre: La séquence des opérations effectuées qui modifie l'état cohérent de la base de données en un autre est appelée transaction de base de données. Une fois la transaction terminée, soit la réussite de la transaction est reflétée dans le système, soit la transaction échoue et aucun changement n'est reflété.
Q # 29) Définissez le verrouillage de la base de données et ses types.
Répondre: Le verrouillage de la base de données signifie essentiellement la transaction concernant l'état actuel de l'élément de données, c'est-à-dire si ces données sont utilisées par d'autres transactions ou non au moment présent.
Il existe deux types de verrouillage de base de données: Verrou partagé et Verrou exclusif.
Q # 30) Qu'est-ce que l'entreposage de données?
Répondre: Le stockage ainsi que l'accès aux données, qui sont dérivées des transactions et d'autres sources, à partir d'un emplacement central afin d'effectuer l'analyse est appelé Data Warehousing.
Q # 31) Qu'entendez-vous par Join?
Répondre: La jointure est le processus de dérivation de la relation entre différentes tables en combinant des colonnes d'une ou plusieurs tables ayant des valeurs communes dans chacune. Lorsqu'une table se joint à elle-même, elle est appelée auto-jointure.
Q # 32) Qu'entendez-vous par recherche d'index?
Répondre: La recherche d'index est le processus d'augmentation de la collection d'index, ce qui contribue à améliorer les performances des requêtes ainsi que la vitesse de la base de données.
Q # 33) Comment améliorer les performances des requêtes en utilisant la recherche d'index?
Réponse: La recherche d'index aide à améliorer les performances des requêtes en:
- Utilisation d'un optimiseur de requêtes pour coordonner les requêtes avec la charge de travail.
- Observer les performances et l'effet de la distribution des index et des requêtes.
Q # 34) Faites la différence entre l’indice «Cluster» et «Non-cluster».
Répondre: L'index clusterisé modifie la table et réorganise la manière dont les enregistrements sont stockés dans la table. La récupération des données est accélérée à l'aide de l'index clusterisé.
Un index non clusterisé modifie les enregistrements stockés dans la table mais crée un objet complètement différent dans la table.
Q # 35) Quels sont les inconvénients d'une requête?
Réponse: Les inconvénients d'une requête sont:
- Les index ne sont pas présents.
- Les procédures stockées sont excessivement compilées.
- Difficulté d'interfaçage.
Q # 36) Qu'entendez-vous par fragmentation?
Répondre: La fragmentation est une fonction qui contrôle les unités de données logiques, également appelées fragments stockés sur différents sites d'un système de base de données distribué.
Q # 37) Définissez les types de jointure.
Répondre: Vous trouverez ci-dessous les types de jointure, qui sont expliqués par rapport aux tables comme un Exemple.
table des employés:
Table employee_info:
a) Jointure intérieure: Inner JOIN est également connu comme un simple JOIN. Cette requête SQL renvoie les résultats des deux tables ayant une valeur commune en lignes.
Requête SQL:
SELECT * from employee, employee_info WHERE employee.EmpID = employee_info.EmpID ;
Résultat:
b) Jointure naturelle: Il s'agit d'un type de jointure interne qui renvoie les résultats des deux tables ayant les mêmes valeurs de données dans les colonnes des deux tables à joindre.
Requête SQL:
SELECT * from employee NATURAL JOIN employee_info;
Résultat:
c) Cross JOIN: Cross JOIN renvoie le résultat comme tous les enregistrements où chaque ligne de la première table est combinée avec chaque ligne de la deuxième table.
Requête SQL:
SELECT * from employee CROSS JOIN employee_info;
Résultat:
Faisons quelques modifications dans les tableaux ci-dessus pour comprendre Right JOIN, Left JOIN et Full JOIN.
table des employés:
Table employee_info:
a) Joindre droit: Right JOIN est également appelé Right Outer JOIN. Cela renvoie toutes les lignes comme résultat de la table de droite même si la condition JOIN ne correspond à aucun enregistrement de la table de gauche.
Requête SQL:
SELECT * from employee RIGHT OUTER JOIN employee_info on (employee.EmpID = employee_info.EmpID);
Résultat:
b) Joindre gauche: Left JOIN est également connu sous le nom de Left Outer JOIN. Cela renvoie toutes les lignes résultant de la table de gauche, même si la condition JOIN ne correspond à aucun enregistrement de la table de droite. C'est exactement l'opposé de Right JOIN.
comment créer un tableau de chaînes en java
Requête SQL:
SELECT * from employee LEFT OUTER JOIN employee_info on (employee.EmpID = employee_info.EmpID);
Résultat:
c) Jointure externe / complète: Le retour Full JOIN résulte en la combinaison du résultat de Left JOIN et Right JOIN.
Requête SQL:
SELECT * from employee FULL OUTER JOIN employee_info on (employee.EmpID = employee_info.EmpID);
Résultat:
Q # 38) Qu'entendez-vous par «atomicité» et «agrégation»?
Réponse: Atomicité est la condition dans laquelle toutes les actions de la transaction sont effectuées ou aucune. Cela signifie qu'en cas de transaction incomplète, le système de gestion de base de données lui-même annulera les effets produits par la transaction incomplète.
Agrégation est le concept d'exprimer la relation avec l'ensemble des entités et leurs relations.
Q # 39) Définissez une impasse fantôme.
Répondre: La détection de blocage fantôme est la condition dans laquelle le blocage n'existe pas réellement mais en raison d'un retard dans la propagation des informations locales, les algorithmes de détection de blocage identifient les blocages.
Q # 40) Définissez le point de contrôle.
Répondre: Checkpoint déclare un point avant lequel tous les journaux sont stockés en permanence sur le disque de stockage et est l'état incohérent. En cas de crash, la quantité de travail et de temps est économisée car le système peut redémarrer à partir du point de contrôle.
Q # 41) Qu'est-ce que le partitionnement de la base de données?
Répondre: Le partitionnement de la base de données est le processus de partitionnement des tables, des index en plus petits morceaux afin de gérer et d'accéder aux données à un niveau plus fin.
Ce processus de partitionnement réduit le coût de stockage d'une grande quantité de données et améliore les performances et la gérabilité.
Q # 42) Expliquez l'importance du partitionnement de la base de données.
Réponse: L'importance du partitionnement de la base de données est:
- Améliore les performances et la gérabilité des requêtes.
- Simplifie les tâches d'administration courantes.
- Agit comme un outil clé pour la construction de systèmes avec des exigences de disponibilité extrêmement élevées.
- Permet d'accéder à une grande partie d'une seule partition.
Q # 43) Expliquez le dictionnaire de données.
Répondre: Le dictionnaire de données est un ensemble d'informations décrivant le contenu et la structure des tables et des objets de base de données. Le travail des informations stockées dans le dictionnaire de données est de contrôler, manipuler et accéder à la relation entre les éléments de la base de données.
Q # 44) Expliquez la clé primaire et la clé composite.
Réponse: clé primaire est cette colonne de la table dont chaque ligne de données est identifiée de manière unique. Chaque ligne de la table doit avoir une clé primaire et deux lignes ne peuvent pas avoir la même clé primaire. La valeur de la clé primaire ne peut jamais être nulle ni être modifiée ou mise à jour.
Clé composite est une forme de la clé candidate où un ensemble de colonnes identifiera de manière unique chaque ligne de la table.
Q # 45) Que comprenez-vous par la clé unique?
Répondre: Une clé unique est la même que la clé primaire dont chaque donnée de ligne est identifiée de manière unique avec une différence de valeur nulle, c'est-à-dire qu'une clé unique autorise une valeur comme valeur NULL.
Q # 46) Qu'entendez-vous par déclencheurs de base de données?
Répondre: Un ensemble de commandes qui sont automatiquement exécutées lorsqu'un événement comme Avant insertion, Après insertion, Sur mise à jour, Sur suppression de ligne se produit dans une table est appelé comme déclencheur de base de données.
Q # 47) Définissez les procédures stockées.
Répondre: Une procédure stockée est une collection de requêtes SQL pré-compilées qui, lorsqu'elles sont exécutées, indiquent un programme prenant des entrées, traitant et donnant la sortie.
Q # 48) Qu'entendez-vous par B-Trees?
Répondre: B-Tree représente la structure de données sous la forme d'un arbre pour la mémoire externe qui lit et écrit de gros blocs de données. Il est couramment utilisé dans les bases de données et les systèmes de fichiers où toutes les insertions, suppressions, tri, etc., se font en temps logarithmique.
Q # 49) Nommez les différents modèles de données disponibles pour les systèmes de base de données.
Réponse: Les différents modèles de données sont:
- Modèle relationnel
- Modèle de réseau
- Modèle hiérarchique
Q # 50) Faites la différence entre les commandes «DELETE», «TRUNCATE» et «DROP».
Répondre: Après l'exécution de 'EFFACER' opération, les instructions COMMIT et ROLLBACK peuvent être exécutées pour récupérer les données perdues.
Après l'exécution de 'TRONQUER' Les instructions operation, COMMIT et ROLLBACK ne peuvent pas être exécutées pour récupérer les données perdues.
'LAISSEZ TOMBER' La commande est utilisée pour supprimer la table ou la clé comme la clé primaire / clé étrangère.
Q # 51) En vous basant sur le tableau donné, résolvez les requêtes suivantes.
Table des employés
à) Écrivez la commande SELECT pour afficher les détails de l'employé avec empid comme 1004.
Requête SQL:
SELECT empId, empName, Age, Address from Employee WHERE empId = 1004;
Résultat:
b) Écrivez la commande SELECT pour afficher tous les enregistrements de la table Employés.
Requête SQL:
SELECT * from Employee;
Résultat:
c) Écrivez la commande SELECT pour afficher tous les enregistrements de l’employé dont le nom commence par le caractère «R».
Requête SQL:
SELECT * from Employee WHERE empName LIKE ‘R%’;
Résultat:
ré) Écrivez une commande SELECT pour afficher l'identifiant, l'âge et le nom des employés avec leur âge dans l'ordre croissant et décroissant.
Requête SQL:
SELECT empId, empName, Age from Employee ORDER BY Age;
Résultat:
SELECT empId, empName, Age from Employee ORDER BY Age Desc;
Résultat:
est) Écrivez la commande SELECT pour calculer le montant total du salaire de chaque employé à partir du tableau Emp ci-dessous.
Table Emp:
Requête SQL:
SELECT empName, SUM(Salary) from Emp GROUP BY empName;
Résultat:
Conclusion
Il s'agit de l'ensemble des questions et réponses d'entretien de la base de données qui sont le plus souvent posées lors de l'entretien.
La plupart du temps, les bases de chaque sujet sont remises en question dans les entretiens. Tout le monde sait que si vos bases sont claires, vous pouvez atteindre des sommets.
Cependant, il peut y avoir des questions plus délicates. Soyez juste confiant et abordez chaque question avec clarté dans votre connaissance du sujet.
Lectures complémentaires:
- Questions d'entretien les plus fréquentes sur SQL
- Principales questions d'entrevue de test de base de données
- Questions d'entretien les plus fréquentes sur la modélisation de données
- Questions d'entretien les plus fréquentes sur SQL Server
lecture recommandée
- Top 32 des meilleures questions et réponses d'entrevue de datastage
- 31 Questions et réponses sur les entretiens de test de base de données
- 40+ meilleurs outils de test de base de données - Solutions de test de données populaires
- Guide complet de test de base de données (pourquoi, quoi et comment tester les données)
- Top 30 des logiciels de gestion de base de données les plus populaires: liste complète
- Top 50+ questions et réponses d'entretien de base de données