20 questions et réponses d’entrevue SQL fréquemment posées [2022]

Le langage de requête structuré (SQL) est le langage de programmation standard utilisé par les administrateurs de bases de données et les analystes de données pour interroger les bases de données. Il est largement utilisé dans les langages de programmation des sites Web, des applications et d’autres plates-formes.

Il est utilisé pour accéder aux données d’une base de données et les manipuler, notamment créer et modifier des tables et des colonnes et interroger les données à l’aide de commandes SQL.

Cet article vous donnera sans aucun doute des informations si vous recherchez des questions et des réponses à utiliser lors de la préparation d’un entretien SQL. Lors d’un entretien d’embauche pour un ingénieur de données, un analyste de données, un administrateur de base de données, etc., les questions suivantes doivent être attendues.

Quelles sont les commandes SQL de base ?

Certaines des commandes SQL les plus importantes sont :

  • SELECT – extrait les données d’une base de données.
  • CREATE TABLE – crée une nouvelle table.
  • DELETE – supprime les données d’une base de données.
  • INSERT INTO – insère de nouvelles données dans une base de données.
  • ALTER DATABASE – modifie une base de données.
  • CREATE DATABASE – crée une nouvelle base de données.
  • UPDATE – met à jour les données dans une base de données.

Quelles sont les quatre instructions SQL importantes ?

Les principales instructions SQL sont divisées en ces catégories :

  • Instructions de langage de définition de données (DDL)
  • Instructions en langage de manipulation de données (DML)
  • Instructions de langage de contrôle de données (DCL)
  • Instructions de langage de contrôle des transactions (TCL)

Quelle est la signification de la clé primaire en SQL ?

Une clé primaire est une colonne (ou un ensemble de colonnes) qui permet d’identifier de manière unique chaque ligne d’une base de données. Les bases de données SQL accordent une grande importance aux clés primaires. Ils fournissent à chaque ligne d’une table de base de données un identifiant unique. Une clé primaire peut être constituée d’un ou plusieurs champs et il ne peut y avoir qu’une seule clé primaire par table.

Que sont les types de données SQL ?

Un type de données est un attribut qui décrit le type de données qu’un objet peut stocker, telles que des chaînes binaires, des données numériques, des données textuelles, des données financières, des données de date et d’heure, etc.

Dans SQL, les types de données sont classés dans les groupes suivants :

  • Chiffres exacts
  • Chiffres approximatifs
  • Date et l’heure
  • Chaînes de caractères
  • Chaînes de caractères Unicode
  • Chaînes binaires

Où sont stockés les noms d’utilisateur et les mots de passe dans SQL Server ?

Les noms d’utilisateur et les mots de passe sont stockés respectivement dans les principaux sys.server et les connexions sys.sql de la table SQL. Les mots de passe ne sont pas stockés en texte normal.

Qu’est-ce que l’injection SQL ?

Les attaques par injection SQL sont l’un des types de cyberattaques les plus courants aujourd’hui. Ils permettent à des attaquants malveillants d’accéder aux données en manipulant la base de données d’une application. Cela peut entraîner un large éventail de conséquences négatives, allant des pertes financières à la perte de données sensibles. La meilleure façon de se protéger contre les attaques par injection SQL est de les empêcher de se produire en premier lieu.

Qu’est-ce qu’un déclencheur en SQL et ses types ?

Un déclencheur est un type spécial de procédure stockée qui s’exécute automatiquement lorsqu’un événement se produit dans le serveur de base de données. Les déclencheurs sont utilisés pour évaluer les données avant ou après la modification des données à l’aide d’instructions DDL et DML.

Il existe trois types de déclencheurs : LOGON, DDL et DML.

  • Déclencheurs de connexion : ces déclencheurs sont déclenchés lorsqu’un utilisateur initie un événement de connexion.
  • Les déclencheurs DDL sont déclenchés chaque fois qu’une commande DDL telle que CREATE, ALTER ou DROP est émise.
  • Déclencheurs DML : ils sont déclenchés chaque fois qu’une commande DML modifie des données. Comparable à INSERT, UPDATE et DELETE

Comment feriez-vous la distinction entre les fonctions à une seule ligne et à plusieurs lignes ?

Une seule ligne dans une table peut être affectée par des fonctions à une seule ligne à la fois. Ils exécutent une ligne et ne renvoient qu’un seul résultat. Il est bien connu que les conversions de longueur et de casse sont des fonctions à une seule ligne.

Les lignes d’une table peuvent être affectées simultanément par plusieurs fonctions de ligne. Elles sont également connues sous le nom de fonctions de groupe, exécutant plusieurs lignes avant de renvoyer une seule sortie.

Qu’est-ce que la normalisation de base de données et quels sont ses quatre principaux types en SQL ?

La normalisation de la base de données est un processus par lequel les données sont organisées pour un accès plus rapide et pour réduire la redondance des données. Les colonnes et les tables d’une base de données sont organisées pendant la normalisation pour s’assurer que toutes les dépendances sont correctement maintenues par les contraintes d’intégrité de la base de données.

Les quatre types de processus de normalisation de base de données sont les suivants :

  • Première forme normale (1 NF)
  • Deuxième forme normale (2 NF)
  • Troisième forme normale (3 NF)
  • Forme normale de Boyce Codd ou quatrième forme normale (BCNF ou 4 NF)

Que sont les index et les contraintes en SQL ?

Les index sont l’un des concepts les plus importants de SQL. Ils nous permettent de trouver rapidement des lignes de données spécifiques dans de grandes bases de données. Ils nous aident également à appliquer des contraintes, qui sont des règles qui indiquent à la base de données comment se comporter lorsque certaines conditions sont remplies.

Les index sont utilisés pour améliorer les performances des requêtes en accélérant la recherche de données dans les tables. Ils sont également utilisés pour améliorer la lisibilité des données dans les tableaux.

Les contraintes sont utilisées pour limiter le type de données pouvant entrer dans une table. Cela garantit l’exactitude et la fiabilité des données du tableau. En cas de violation entre la contrainte et l’action de données, l’action est abandonnée.

Quelles sont les contraintes SQL couramment utilisées ?

Les contraintes SQL couramment utilisées sont :

  • CREATE INDEX : Cette commande garantit que les index sont créés pour les tables afin de simplifier la récupération des données.
  • FOREIGN KEY : la clé étrangère d’une table doit connecter des tables avec des attributs similaires.
  • DEFAULT : si aucune valeur n’est fournie pour les champs d’une colonne, il fournit une valeur par défaut pour ces champs.
  • UNIQUE : Ceci spécifie que chaque valeur d’une colonne doit être distincte.
  • CLÉ PRIMAIRE : la clé primaire d’une table doit identifier chaque ligne.
  • NOT NULL : cette condition garantit que les valeurs NULL ne sont pas acceptées par les colonnes.
  • CHECK : Il garantit que chaque champ de colonne est conforme à une exigence prédéterminée.

NULL est-il égal à 0 en SQL ?

Une valeur NULL dans SQL indique une valeur non disponible ou affectée. Un espace (‘ ‘) ou un zéro (0) ne sont pas équivalents à la valeur NULL. Vous ne pouvez pas comparer la valeur NULL à une autre valeur à l’aide d’opérateurs de comparaison tels que « = » ou « > » car elle ne peut être égale ou différente d’aucune autre valeur.

Comment prévenir les attaques par injection SQL ?

Outre l’analyse et les tests de pénétration constants, les méthodes de sécurité telles que la validation des entrées, le nettoyage, les instructions préparées et les requêtes SQL paramétrées sont essentielles pour prévenir les attaques par injection SQL. De plus, des défenses rapides comme un pare-feu aideraient à protéger la base de données SQL.

Qu’est-ce que Dynamic SQL et quand pouvez-vous l’utiliser ?

Dynamic SQL est une fonctionnalité que vous pouvez utiliser pour modifier vos requêtes au moment de l’exécution en fonction d’un ou plusieurs critères, y compris la date actuelle, l’heure actuelle ou tout autre critère de votre choix.

Vous pouvez utiliser SQL dynamique pour modifier vos requêtes de manière significative et vous aider à atteindre vos objectifs ou simplement à améliorer vos compétences en programmation. Que vous créiez une nouvelle application, amélioriez une base de données ou ajoutiez des fonctionnalités d’entrepôt de données à votre système de production, vous pouvez utiliser Dynamic SQL pour tout faire.

Quels sont les différents types de clés en SQL ?

Clé primaire : Chaque ligne ou enregistrement d’une table de base de données est identifié de manière unique par un champ appelé Clé primaire. La valeur unique doit être dans la clé primaire. Les champs de clé primaire ne peuvent pas contenir de valeurs NULL. Il ne peut y avoir qu’une seule clé primaire par table, composée d’un ou plusieurs champs.

Clé étrangère : le champ ou le groupe de champs d’une table qui se rapporte à la clé primaire d’une autre table est appelé clé étrangère. Les tables avec des clés primaires sont appelées tables parents, tandis que les tables avec des clés étrangères sont appelées tables enfants.

Super clé : une super clé est une clé ou un ensemble de clés permettant d’identifier les entrées d’une table. Bien que tous les attributs ne soient pas obligatoires pour identifier un enregistrement, une super clé peut en avoir un ou plusieurs.

Clé candidate : une clé candidate est un sous-ensemble de super clés pouvant être utilisées pour identifier des enregistrements dans une base de données en fonction d’un ou de plusieurs attributs. Contrairement à Superkey, toutes les fonctionnalités d’une clé candidate doivent être utiles pour identifier les enregistrements.

Clé composite : une clé composite est une combinaison de deux colonnes ou plus dans une table qui est utilisée pour identifier les lignes d’une table. Une clé composite est une clé primaire avec un autre attribut ou une autre colonne.

Quels sont les types d’index en SQL ?

Voici les types d’index en SQL

  • Indice de hachage
  • mémoire optimisée
  • Index clusterisé
  • Index non clusterisé
  • Index unique
  • Index de magasin de colonne
  • Index avec colonnes incluses
  • Index sur les colonnes calculées
  • Index filtré
  • Index spatial
  • Index XML
  • Index du texte intégral

Que voulez-vous dire par pool tampon et mentionnez ses avantages ?

Dans SQL, un pool de mémoire tampon est également appelé cache de mémoire tampon. Un pool de mémoire tampon peut être utilisé par toutes les ressources pour stocker leurs pages de données mises en cache. Lors de la configuration d’une instance SQL Server, la taille du pool de mémoire tampon peut être spécifiée. La taille d’un pool de mémoire tampon détermine le nombre de pages qu’il peut contenir.

Voici les avantages d’un pool de mémoire tampon :

  • Améliorations des performances d’E/S
  • Croissance du débit des transactions
  • Réduction de la latence d’E/S
  • Amélioration des performances de lecture

Qu’entendez-vous par dépendance et mentionnez les différentes dépendances ?

Lorsqu’un objet est référencé par son nom dans une instruction SQL conservée dans un autre objet, une dépendance entre les deux objets est établie. Le terme « entité référencée » fait référence à un objet qui apparaît dans une expression SQL, tandis que le terme « entité de référence » fait référence à un objet qui contient une expression SQL.

Voici les différents types de dépendances dans SQL.

  • Dépendance fonctionnelle
  • Dépendance entièrement fonctionnelle
  • Dépendance multivaluée
  • Dépendance transitive
  • Dépendance partielle

Les jointures sont un élément fondamental de la gestion des données dans SQL. Ils permettent de joindre deux tables ou plus pour créer une seule table qui peut être utilisée pour analyser les données. Ils fournissent également un moyen de filtrer les résultats en fonction de critères dans un seul tableau, ce qui peut être utile lorsque vous essayez de trouver des lignes ou des colonnes spécifiques dans un grand tableau.

Il existe quatre principaux types de JOIN en SQL : INNER JOIN, OUTER JOIN, CROSS JOIN et SELF JOIN.

Quels sont les opérateurs d’ensemble en SQL ?

Les données d’une ou plusieurs tables du même type peuvent être combinées à l’aide de l’opérateur set. Les opérateurs d’ensemble SQL et de jointure SQL sont similaires, mais il existe quelques différences essentielles. Les opérateurs d’ensemble SQL collectent des enregistrements à partir de différentes requêtes, tandis que les jointures SQL combinent des colonnes de différentes tables. Les requêtes SQL composées sont celles qui incluent des opérations d’ensemble.

Conclusion

J’espère que ces questions d’entretien SQL vous offrent une bonne image de ce à quoi vous attendre du point de vue de l’entretien. Une plus grande exposition à l’environnement SQL est nécessaire pour déchiffrer l’interview SQL ; cela peut être atteint en étudiant SQL en profondeur. Afin d’évaluer les principes clés de SQL, vous devez également vous entraîner aux questions d’entrevue de requête SQL et continuer à lire.

Si vous recherchez des éclaircissements sur les requêtes SQL, veuillez consulter la feuille de triche SQL pour obtenir plus d’informations sur les instructions SQL.

Pour acquérir une expérience pratique en exécutant des requêtes SQL, consultez ces plates-formes d’entraînement SQL.