Académique Documents
Professionnel Documents
Culture Documents
Oracle est une base de données sécurisée largement utilisée dans les entreprises o Les procédures stockées permettent un meilleur partage de
multinationales.
l'application.
Les questions fréquemment posées de la base de données Oracle sont données ci-
dessous.
o Un ou plusieurs fichiers de contrôle. 5) Quels sont les types de données disponibles en PL/SQL ?
etc.
o Tablespaces
PL/SQL utilise la structure BLOC comme structure de base. Chaque programme PL/SQL
PL/SQL est une version avancée de SQL. Il y a une liste des questions d'entretien PL/SQL se compose d'instructions SQL et PL/SQL qui forment un bloc PL/SQL.
avec réponse.
Procédure : Une procédure n'a pas de type de retour et ne doit pas retourner de
valeur, mais elle peut avoir une instruction de retour qui arrête simplement son
3) Quelles sont les caractéristiques les plus importantes de PL/SQL ? exécution et revient à l'appelant. Une procédure est utilisée pour retourner plusieurs
valeurs sinon elle est généralement similaire à une fonction.
Une liste de quelques caractéristiques notables :
Package : Un package est un objet de schéma qui regroupe des types, des éléments et
des sous-programmes PL/SQL logiquement liés. Vous pouvez également dire qu'il
s'agit d'un groupe de fonctions, de procédures, de variables et d'instructions de type
o PL/SQL est un langage structuré en blocs. d'enregistrement. Il offre une modularité, grâce à cette installation, il facilite le
développement d'applications. Il est utilisé pour cacher des informations aux
utilisateurs non autorisés.
o Il est portable dans tous les environnements prenant en charge Oracle.
Syntaxe:
L'exception est une partie de gestion des erreurs de PL/SQL. Il existe deux types
d'exceptions : l'exception prédéfinie et l'exception définie par l'utilisateur.
1. < nom_exception > EXCEPTION ;
l'assigner dans une variable nommée Greeting ? Une liste d'exceptions prédéfinies en PL/SQL :
o DUP_VAL_ON_INDEX
o ZERO_DIVIDE
Non. PL/SQL ne prend pas en charge les commandes de définition de données telles
que CREATE. o TOO_MANY_ROWS
o CURSOR_ALREADY_OPEN
o NUMÉRO INVALIDE
11) Écrivez une différence unique entre une fonction et une procédure stockée.
o INVALID_CURSOR
Une fonction renvoie une valeur alors qu'une procédure stockée ne renvoie pas de
valeur.
o PROGRAM_ERROR
o TIMEOUT _ON_RESOURCE
Chaque fois qu'une erreur se produit, une exception se produit. L'erreur est un bogue o CONNEXION REFUSÉE
alors que l'exception est un avertissement ou une condition d'erreur.
o VALUE_ERROR
o etc.
1. Too_many_rows
18) Quel est le nombre maximum de triggers que vous pouvez appliquer sur une seule
2. Aucune donnée disponible
table ?
3. Erreur_valeur
12 déclencheurs.
4. Zero_error etc.
o AVANT INSÉRER
20) Quelle est la différence entre l'exécution de triggers et les procédures stockées ?
o Paquets
o Curseurs
Une clause WHEN spécifie la condition qui doit être vraie pour que le déclencheur soit
déclenché. 29) Quelle est la différence entre les curseurs implicites et explicites ?
Le curseur implicite est implicitement déclaré par Oracle. Il s'agit d'un curseur vers
toutes les commandes DDL et DML qui ne renvoient qu'une seule ligne.
23) Comment désactiver un trigger nom update_salary ? Un curseur explicite est créé pour les requêtes renvoyant plusieurs lignes.
24) Quelle commande est utilisée pour supprimer un déclencheur ? L'attribut de curseur SQL%ROWCOUNT renverra le nombre de lignes traitées par une
instruction SQL.
25) quelles sont les deux tables virtuelles disponibles au moment de l'exécution du
Elle renvoie la valeur booléenne TRUE si au moins une ligne a été traitée.
déclencheur de base de données ?
Pour les déclencheurs liés à INSERT, les valeurs NOW.column_name sont disponibles 32) Qu'obtiendrez-vous par l'attribut de curseur SQL%NOTFOUND ?
uniquement.
Pour les déclencheurs liés à UPDATE, les deux colonnes de table sont disponibles.
Un package PL/SQL peut être spécifié sous la forme d'un fichier qui regroupe des
fonctions, des curseurs, des procédures stockées et des variables en un seul endroit.
26) Qu'est-ce qu'une procédure stockée ?
l'aide de la section de gestion des exceptions dans un bloc PL/SQL. Par exemple :
instruction SELECT INTO, qui ne renvoie aucune ligne.
34) Quelles sont les deux parties différentes des packages PL/SQL ?
Partie spécification : elle spécifie la partie où l'interface avec l'application est définie.
Les conditions suivantes sont vraies pour l'instruction Commit :
Partie corps : cette partie spécifie où la mise en œuvre de la spécification est définie.
o Le travail effectué dans une transition est annulé comme s'il n'avait
37) Quels sont les avantages de la procédure stockée ? 43) Qu'est-ce qu'une erreur de table en mutation ?
Modularité, extensibilité, réutilisabilité, maintenabilité et compilation unique. Une erreur de table en mutation se produit lorsqu'un déclencheur tente de mettre à
jour une ligne qu'il utilise actuellement. Il est corrigé en utilisant des vues ou des tables
temporaires.
La cohérence signifie simplement que chaque utilisateur voit la vue cohérente des
%ROWCOUNT : renvoie le nombre de lignes affectées par les opérations DML :
données.
INSERT,DELETE,UPDATE,SELECT.
39) Quelle est la différence entre une erreur de syntaxe et une erreur d'exécution ?
45) Qu'est-ce que le curseur et pourquoi est-il nécessaire ?
Une erreur de syntaxe peut être facilement détectée par un compilateur PL/SQL. Par
exemple : orthographe incorrecte, etc. tandis qu'une erreur d'exécution est gérée à
Un curseur est une zone de travail temporaire créée dans une mémoire système lors
de l'exécution d'une instruction SQL.
Un curseur contient des informations sur une instruction select et la ligne de données 7) Qu'est-ce que la copie en bloc ou BCP dans Oracle ?
à laquelle elle accède. Cette zone de travail temporaire stocke les données extraites
de la base de données et manipule ces données. Un curseur peut contenir plusieurs
lignes, mais ne peut traiter qu'une seule ligne à la fois. Les curseurs sont nécessaires La copie en bloc ou BCP dans Oracle est utilisée pour importer ou exporter des données
pour traiter les lignes individuellement pour les requêtes. à partir de tables et de vues, mais elle ne copie pas la structure des mêmes données.
Le principal avantage de BCP est un mécanisme rapide de copie des données et vous
pouvez également effectuer facilement la sauvegarde des données.
données ?
1. Curseur implicite, et
Une base de données Oracle contient une ou plusieurs unités de stockage logiques
2. curseur explicite appelées tablespaces. Ces espaces de table stockent collectivement des données
entières de bases de données et chaque espace de table dans la base de données
Oracle se compose d'un ou plusieurs fichiers appelés fichiers de données. Ces fichiers
de données sont une structure physique qui confirme le système d'exploitation dans
lequel Oracle s'exécute.
Un instantané est une réplique d'une table maître cible à partir d'un seul point dans le
Une base de données contient une unité de stockage logique appelée tablespaces. Un temps. En termes simples, vous pouvez dire qu'un instantané est une copie d'une table
tablespace est un ensemble de structures logiques liées. En fait, un tablespace sur une base de données distante.
regroupe des structures logiques liées.
10) Quelle est la différence entre la sauvegarde à chaud et la sauvegarde à froid dans
4) Qu'est-ce qu'un tablespace SYSTEM et quand est-il créé ?
Oracle ? Parlez également de leurs avantages.
Lorsque la base de données est créée dans le système de base de données Oracle, elle
génère automatiquement un espace de table SYSTEM nommé SYSTEM. L'espace de Sauvegarde à chaud (sauvegarde en ligne) : une sauvegarde à chaud est également
table SYSTEM contient des tables de dictionnaire de données pour l'ensemble de la appelée sauvegarde en ligne car elle est effectuée pendant que la base de données est
base de données. active. Certains sites ne peuvent pas fermer leur base de données pendant qu'ils font
une copie de sauvegarde, ils sont utilisés 24 heures sur 24, 7 jours sur 7.
Sauvegarde à froid (sauvegarde hors ligne) : une sauvegarde à froid est également
connue sous le nom de sauvegarde hors ligne car elle est effectuée alors que la base
de données a été arrêtée à l'aide de la commande normale SHUTDOWN. Si la base de
5) Qu'est-ce qu'une table Oracle ? données est soudainement arrêtée avec une condition incertaine, elle doit être
redémarrée en mode RESTRICT, puis arrêtée avec l'option NORMAL.
Une table est une unité de base de stockage de données dans la base de données
Oracle. Un tableau contient toutes les informations accessibles d'un utilisateur en Pour une sauvegarde à froid complète, les fichiers suivants doivent être sauvegardés.
lignes et en colonnes.
Tous les fichiers de données, Tous les fichiers de contrôle, Tous les fichiers de
journalisation en ligne (facultatif) et le fichier init.ora (vous pouvez le recréer
manuellement).
o 9 - Numéro de version majeure de la base de données Les pools partagés Oracle contiennent deux couches :
Les points de sauvegarde sont utilisés pour diviser une transaction en parties plus
petites. Il permet d'annuler une transaction. Un maximum de cinq points de
sauvegarde est autorisé. Il est utilisé pour enregistrer nos données, chaque fois que
vous rencontrez une erreur, vous pouvez revenir en arrière à partir du point où vous
o Il est utilisé pour identifier les lignes migrées et chaînées de la table ou
avez enregistré votre SAVEPOINT.
du cluster.
13) Qu'est-ce qu'un cluster de hachage dans Oracle ? o Il aide à collecter les statistiques sur l'objet utilisé par l'optimiseur. Elles
Le cluster de hachage est une technique permettant de stocker des données dans une sont ensuite stockées dans le dictionnaire de données.
table de hachage et d'améliorer les performances de récupération des données. La
fonction de hachage est appliquée sur la valeur de clé de cluster de la ligne de table et
stockée dans le cluster de hachage. o Il aide à supprimer les statistiques utilisées par l'objet du dictionnaire
de données.
Index : Il s'agit d'une méthode de réglage des performances pour traiter les 19) Quels types de jointures sont utilisés pour écrire des SOUS-REQUETES ?
enregistrements.
o Jointure externe
16) Quels sont les différents types de modules dans les formulaires Oracle ? 21) Qu'est-ce qu'un synonyme ?
Voici les différents modules dans les formulaires Oracle : Un synonyme est également appelé alias pour une table, une vue, une séquence ou
une unité de programme.
o Module de formulaire
o Module de menus
22) Quels sont les différents types de synonymes ?
Les points de sauvegarde sont utilisés pour diviser une transaction en phases plus
petites. Il permet d'annuler une partie d'une transaction. Il y a un maximum de 5 points
o Le synonyme peut être utilisé pour masquer le vrai nom et le
de sauvegarde autorisés dans Oracle Database. Chaque fois qu'une erreur est
rencontrée, il est possible de revenir en arrière à partir du point où le SAVEPOINT a été
propriétaire d'un objet. enregistré.
o Il simplifie les instructions SQL pour les utilisateurs de la base de Le déclencheur de validation post-base de données est exécuté après que les
formulaires Oracle aient émis la validation de la transaction finalisée, tandis que la
données. validation post-formulaire est déclenchée pendant le processus de transaction de
publication et de validation, après la validation de la base de données.
Oui, vous pouvez stocker des images dans une base de données en utilisant le type de
données brutes longues. Ce type de données est utilisé pour stocker des données La sauvegarde logique est utilisée pour lire un ensemble d'enregistrements de base de
binaires d'une longueur de 2 gigaoctets. Cependant, la table ne peut avoir qu'un seul données et les écrire dans un fichier. Un utilitaire d'exportation est utilisé pour
type de données Long Raw. effectuer la sauvegarde tandis qu'un utilitaire d'importation est utilisé pour récupérer
à partir de la sauvegarde.
Le type de données BLOB est un type de données avec une chaîne binaire de longueur
variable. Il est utilisé pour stocker deux gigaoctets de mémoire. Pour le type de La mise en miroir est un processus consistant à disposer d'une copie des fichiers
données BLOB, la longueur doit être spécifiée en octets. journaux Redo. Cela se fait en créant ensemble un groupe de fichiers journaux. Cela
garantit que LGWR les écrit automatiquement dans tous les membres du groupe de
journalisation en ligne actuel. Si le groupe échoue, la base de données bascule
automatiquement vers le groupe suivant. Cela diminue les performances.
Traduire est utilisé pour remplacer un caractère par caractère tandis que Remplacer 32) Quelle est la signification des indices récursifs dans Oracle ?
est utilisé pour remplacer un seul caractère par un mot.
Le nombre de fois qu'une table de dictionnaire est appelée à plusieurs reprises par
divers processus est appelé indice récursif. Un indice récursif est produit en raison de
la petite taille du cache du dictionnaire de données.
La principale limitation de la contrainte CHECK est que la condition doit être une
o Tableaux : Il s'agit d'un ensemble d'éléments organisés de manière expression booléenne évaluée à l'aide des valeurs de la ligne insérée ou mise à jour et
ne peut pas contenir de sous-requêtes.
verticale et horizontale.
o Vues : C'est une table virtuelle dérivée d'une ou plusieurs tables. 34) À quoi sert l'option GRANT dans la commande IMP ?
o Index : il s'agit d'une méthode de réglage des performances pour traiter GRANT est utilisé pour importer des autorisations d'objet.
les enregistrements.
L'option INDEXES est utilisée pour déterminer si les index sont importés.
42) Quelles sont les extensions utilisées par les rapports Oracle ?
37) À quoi sert l'option IGNORE dans la commande IMP ? Les rapports Oracle sont utilisés pour permettre aux entreprises de fournir des
informations de tous niveaux à l'intérieur ou à l'extérieur de manière sécurisée. Le
rapport Oracle utilise des fichiers REP et des extensions de fichier RDF .
L'option IGNORE est utilisée pour spécifier comment les erreurs de création d'objet
doivent être gérées.
43) Comment convertir une chaîne en date dans la base de données Oracle ?
L'option SHOW spécifie quand la valeur de show=y, le DDL dans le fichier d'exportation
est affiché. Prenons un exemple :
39) À quoi sert le paramètre FILE dans la commande IMP ? Il reviendra le 12 décembre 2012 .
La fonction SYSDATE() est utilisée dans Oracle pour trouver la date et l'heure actuelles
40) Comment convertir une date en char dans Oracle ? Donnez un exemple. du système d'exploitation sur lequel la base de données s'exécute.
La fonction to_char() est utilisée pour convertir la date en caractère. Vous pouvez
également spécifier le format dans lequel vous souhaitez obtenir la sortie
Ou
45) Quelle sera la syntaxe pour trouver la date et l'heure actuelles au format "AAAA-
MM-JJ" ?
1. SELECT to_char ( to_date ( '12-12-2012' , 'DD-MM-YYYY' ) , 'DD-MM-
Paramètres réels : les paramètres réels sont les variables ou les expressions
référencées dans la liste des paramètres d'un sous-programme. Questions et réponses de l'entretien SQl
Voyons un appel de procédure qui liste deux paramètres réels nommés empno et amt
: 1) Qu'est-ce que SQL ?
SQL signifie le langage de requête structuré. C'est le langage standard utilisé pour
maintenir la base de données relationnelle et effectuer de nombreuses opérations de
1. raise_sal(empno, amt); manipulation de données différentes sur les données. SQL a été initialement inventé
en 1970. C'est un langage de base de données utilisé pour la création, la suppression,
la récupération et la modification de lignes de base de données, etc. parfois, il est
Paramètres formels : les paramètres formels sont des variables déclarées dans une prononcé comme « suite ». Nous pouvons également l'utiliser pour gérer des données
spécification de sous-programme et référencées dans le corps du sous-programme. organisées composées d'entités (variables) et de relations entre différentes entités de
données.
2) Quand SQL est apparu ? stockées dans la base de données. Les commandes de cette catégorie
SQL est apparu pour la première fois en 1974. C'est l'un des langages les plus utilisés incluent GRANT et REVOKE.
pour maintenir la base de données relationnelle. En 1986, SQL est devenu la norme de
l'American National Standards Institute (ANSI) et de l'ISO (International Organization
for Standardization) en 1987. o Transaction Control Language (TCL): Il est utilisé pour gérer les
o Pour mettre à jour des enregistrements dans une base de données Exemple
2. (
o Pour créer des vues dans une base de données
3. Roll_no INT,
o Pour effectuer des opérations complexes sur la base de données.
4. Nom VARCHAR(45),
5. Succursale VARCHAR(30),
6. );
4) SQL prend-il en charge les fonctionnalités du langage de programmation ?
SQL fait référence au langage de requête standard. Par conséquent, il est vrai que SQL
est un langage mais ne prend pas réellement en charge le langage de
programmation. C'est un langage commun qui n'a pas de boucle, d'instructions 7) A quoi sert le langage DML ?
conditionnelles et d'opérations logiques. Il ne peut pas être utilisé pour autre chose
que la manipulation de données. C'est un langage de commande pour effectuer des
opérations de base de données. L'objectif principal de SQL est de récupérer, Le langage de manipulation de données permet à l'utilisateur de récupérer et de
manipuler, mettre à jour, supprimer et effectuer des opérations complexes telles que manipuler des données dans une base de données relationnelle. Les commandes DML
des jointures sur les données présentes dans la base de données. ne peuvent effectuer que des opérations en lecture seule sur les données. Nous
pouvons effectuer les opérations suivantes en utilisant le langage DDL :
données composée de commandes telles que CREATE, ALTER, DROP, o Supprimez les données de la base de données via la commande DELETE.
etc.
Exemple
GRANT : Il permet aux administrateurs système d'attribuer des privilèges et des rôles
1. CONSTRAINT nom_contrainte]
à des comptes d'utilisateurs spécifiques pour effectuer des tâches spécifiques sur la
base de données.
2. CLÉ ÉTRANGÈRE [nom_clé_étrangère] (nom_col, ...)
REVOKE : Il permet aux administrateurs système de révoquer les privilèges et les rôles
des comptes d'utilisateurs afin qu'ils ne puissent pas utiliser l'autorisation 3. REFERENCES parent_tbl_name (col_name,...)
précédemment attribuée sur la base de données.
Exemple
Pour lire plus d'informations, cliquez ici
Une clé unique est un champ unique ou une combinaison de champs qui garantit que
toutes les valeurs stockées dans la colonne seront uniques. Cela signifie qu'une
colonne ne peut pas stocker de valeurs en double. Cette clé assure l'unicité de la
9) Que sont les tables et les champs de la base de données ? colonne ou de l'ensemble de colonnes. Par exemple, les adresses e-mail et les
numéros de rôle des tables des élèves doivent être uniques. Il peut accepter une valeur
nulle mais une seule valeur nulle par colonne. Il assure l'intégrité de la colonne ou du
Un tableau est un ensemble de données organisées sous forme de lignes et de groupe de colonnes pour stocker différentes valeurs dans une table.
colonnes. Il permet aux utilisateurs de stocker et d'afficher des enregistrements dans
le format de structure. Il est similaire aux feuilles de calcul dans l'application de
tableur. Ici, les lignes font référence aux tuples, représentant l'élément de données Nous pouvons définir une clé étrangère dans une table comme suit :
simple, et les colonnes sont l'attribut des éléments de données présents dans une ligne
particulière. Les colonnes peuvent être classées comme verticales et les lignes sont
horizontales.
Les champs sont les composants qui fournissent la structure de la table. Il stocke la
même catégorie de données dans le même type de données. Une table contient un
nombre fixe de colonnes mais peut avoir n'importe quel nombre de lignes appelées
enregistrement. Elle est également appelée colonne dans la table de la base de 1. CREATE TABLE nom_table(
données. Il représente l'attribut ou les caractéristiques de l'entité dans
l'enregistrement. 2. type de données col1,
4. ...
Tableau : Étudiant
5. );
Champ : Stud_rollno, Stud_name, Date de naissance, Branche, etc.
Une clé primaire est un champ ou une combinaison de champs qui identifient de 13) Quelle est la différence entre une clé primaire et une clé unique ?
manière unique chaque enregistrement de la table. Il fait partie d'un type particulier
de clé unique. Si la colonne contient une clé primaire, elle ne peut pas être nulle ou
vide. Une table peut avoir des colonnes en double, mais elle ne peut pas avoir plus La clé primaire et la clé unique sont toutes deux des contraintes essentielles du SQL. La
d'une clé primaire. Il stocke toujours des valeurs uniques dans une colonne. Par principale différence entre eux est que la clé primaire identifie chaque enregistrement
exemple, le numéro ROLL peut être traité comme la clé primaire pour un étudiant de de la table. En revanche, la clé unique empêche les entrées en double dans une
l'université ou du collège. colonne, à l'exception d'une valeur NULL. Le tableau comparatif suivant l'explique plus
clairement :
Clé primaire
Nous ne pouvons pas modifier ou supprimer les valeurs des colonnes de clé primaire. 16) Quels sont les différents types deNous pouvons
systèmes modifier
de gestion deles valeurs
bases de colonne
de données ? de clé unique.
Une base de données est une collection organisée de données structurées en tables, o Bases de données relationnelles (RDBMS
lignes, colonnes et index. Il aide l'utilisateur à trouver fréquemment les informations
pertinentes. Il s'agit d'un système électronique qui facilite l'accès aux données, la
manipulation des données, la récupération des données, le stockage des données et la o Bases de données orientées objet
gestion des données. Presque toutes les organisations utilisent la base de données
pour stocker les données en raison de sa facilité d'utilisation facilement accessible et
élevée. La base de données offre un accès parfait aux données et nous permet o Bases documentaires (Document DB)
d'effectuer les tâches requises.
o Exact
o Processeur de requête
o Moteur de base de données La normalisation sert principalement à ajouter, supprimer ou modifier un champ qui
peut être fait dans une seule table. L'utilisation principale de la normalisation est de
supprimer la redondance et de supprimer les distractions d'insertion, de suppression
o Rapports
et de mise à jour. La normalisation divise la table en petites partitions, puis les relie à
l'aide de différentes relations pour éviter les risques de redondance.
inclut ALL, AND, ANY, ISNULL, EXISTS, BETWEEN, IN, LIKE, NOT, OR,
UNIQUE.
opérateurs tels que ET (symbole &), OU (|, ^), PAS (~), etc.
multiplier égal (*=), diviser égal (/=), modulo égal (%=), etc.
23) Quels sont les différents types d'opérateurs SQL ? Une vue est un objet de base de données qui n'a pas de valeurs. C'est une table
virtuelle qui contient un sous-ensemble de données dans une table. Il ressemble à un
tableau réel contenant des lignes et des colonnes, mais il prend moins de place car il
Les opérateurs sont les mots-clés spéciaux ou les caractères spéciaux réservés pour n'est pas présent physiquement. Elle fonctionne de la même manière que la table de
effectuer des opérations particulières. Ils sont également utilisés dans les requêtes base mais ne contient aucune donnée propre. Son nom est toujours unique. Une vue
SQL. Nous pouvons principalement utiliser ces opérateurs dans la clause WHERE des peut contenir des données d'une ou de plusieurs tables. Si des modifications se
commandes SQL. Cela fait partie de la commande pour filtrer les données en fonction produisent dans la table sous-jacente, les mêmes modifications sont également
de la condition spécifiée. Les opérateurs SQL peuvent être classés dans les types reflétées dans les vues.
suivants :
3. OÙ condition ;
Un index est une structure de disque associée à une table ou à une vue qui accélère la 2. ID entier AUTO_INCREMENT CLÉ PRIMAIRE,
récupération des lignes. Il réduit le coût de la requête car le coût élevé de la requête
entraînera une baisse de ses performances. Il est utilisé pour augmenter les 3. Nom varchar(45),
performances et permettre une récupération plus rapide des enregistrements de la
table. L'indexation réduit le nombre de pages de données que nous devons visiter pour
trouver une page de données particulière. Il a également une valeur unique, ce qui 4. Téléphone varchar(15),
signifie que l'index ne peut pas être dupliqué. Un index crée une entrée pour chaque
valeur, ce qui accélère la récupération des données. 5. Ville varchar(25),
Par exemple : Supposons que nous ayons un livre qui contient les détails des pays. Si 6. );
vous voulez trouver des informations sur l'Inde, pourquoi parcourir chaque page de ce
livre ? Vous pouvez accéder directement à l'index. Ensuite, à partir de l'index, vous
pouvez accéder à cette page particulière où toutes les informations sur l'Inde sont Supposons que nous voulions faire d'une colonne Phone un index unique. Nous
données. pouvons le faire comme ci-dessous :
o Index unique .
o Index clusterisé
Un index clusterisé est en fait une table dans laquelle les données des lignes sont
o Index bitmap
stockées. Il détermine l'ordre des données de la table en fonction des valeurs clés qui
peuvent être triées dans une seule direction. Chaque table ne peut avoir qu'un seul
index clusterisé. C'est le seul index créé automatiquement lors de la génération de la
o Indice normal
clé primaire. Si de nombreuses modifications de données doivent être effectuées dans
la table, les index clusterisés sont préférables.
o Index composé
Pour lire plus d'informations, cliquez ici
o Index B-Tree
.
o Index basé sur les fonctions
Les index autres que les index PRIMARY (index clusterisés) sont appelés index non
27) Qu'est-ce que l'index unique ? clusterisés. Nous savons que les index clusterisés sont créés automatiquement lorsque
les clés primaires sont générées, et que les index non clusterisés sont créés lorsque
plusieurs conditions de jointure et divers filtres sont utilisés dans la requête. Les
UNIQUE INDEX est utilisé pour imposer l'unicité des valeurs dans une ou plusieurs
données d'index et de table non clusterisées sont toutes deux stockées à des
colonnes. Nous pouvons créer plusieurs index uniques dans une seule table. Pour créer
emplacements différents. Il ne peut pas modifier l'ordre physique de la table et
un index unique, l'utilisateur doit vérifier les données de la colonne car les index
maintient l'ordre logique des données.
uniques sont utilisés lorsqu'une colonne de la table a des valeurs uniques. Cette
indexation ne permet pas au champ d'avoir des valeurs en double si la colonne est
indexée de manière unique. Un index unique peut être appliqué automatiquement Le but de la création d'un index non clusterisé est de rechercher les données. Son
lorsqu'une clé primaire est définie. meilleur exemple est un livre dont le contenu est écrit à un endroit et l'index à un autre
endroit. Nous pouvons créer de 0 à 249 index non clusterisés dans chaque
table. L'indexation non clusterisée améliore les performances des requêtes qui
Nous pouvons le créer en utilisant la syntaxe suivante :
utilisent des clés sans affecter la clé primaire.
30) Quelles sont les différences entre SQL, MySQL et SQL Server ? Les index clusterisés stockent les informations sur les données et les données elles-mêmes.
Le tableau comparatif suivant explique leurs principales différences : Il ne peut y avoir qu'un seul index clusterisé par table.
Un index clusterisé détermine comment les données sont stockées physiquement dans la table. Par conséquent,
SQL MySQL se
.
SQL a été développé par IBM Corporation. MySQL a été développé par Oracle Corporation. SQ
SQL est un langage de requête pour la gestion des bases de données. MySQL est un logiciel de base de données qui utilise le langage SQL pour gérer la base de données. SQ
34) Quelle est la requête SQL pour afficher la date actuelle ?
SQL n'a pas de variables. MySQL peut utiliser des contraintes de variables et des types de données. SQ
Il existe une fonction intégrée dans SQL appelée GetDate(), qui est utilisée pour
SQL est un langage de programmation, de sorte qu'il ne reçoit aucune mise à jour. Ses renvoyer
MySQL estl'horodatage
un logiciel, ilactuel.
est donc fréquemment mis à jour. SQ
commandes sont toujours fixes et restent les mêmes.
31) Quelle est la différence entre SQL et PL/SQL ? 35) Que sont les jointures en SQL ? Nommez les jointures SQL les plus couramment
utilisées ?
Le tableau comparatif suivant explique leurs principales différences :
Les jointures SQL sont utilisées pour extraire des données de plusieurs tables dans un
ensemble de résultats significatif. Il est effectué chaque fois que vous devez récupérer
SQL des enregistrements à partir de deux tables ou plus. Ils sontPL/SQL
utilisés avec l'instruction
SELECT et les conditions de jointure.
SQL est un langage de requête structuré de base de données utilisé pour communiquer avec des bases
Voicide
lesdonnées
jointuresrelationnelles. Il a été développé
les plus couramment utilisées enpar
SQL : PL/SQL ou Procedural Language/Structured Query Langu
IBM Corporations et est apparu pour la première fois en 1974. début des années 90. Il utilise SQL comme langage de bas
SQL est un langage déclaratif et orienté données. PL/SQL est un langage procédural et orienté application.
o JOINTURE INTERNE
SQL n'a pas de variables. PL/SQL peut utiliser des contraintes de variables et des ty
o JOINTURE EXTERNE GAUCHE
SQL ne peut exécuter qu'une seule requête à la fois. PL/SQL peut exécuter un bloc entier de code à la fois.
o JOINT EXTERNE DROIT
La requête SQL peut être intégrée dans PL/SQL. PL/SQL ne peut pas être intégré dans SQL car SQL ne pren
SQL peut interagir directement avec le serveur de base de données. PL/SQL ne peut pas interagir directement avec le serveur
SQL est comme la source de données que nous devons afficher. 36) Quels sont les différents types de jointures en SQL ? PL/SQL fournit une plate-forme où les données SQL seron
Les jointures sont utilisées pour fusionner deux tables ou récupérer des données à
partir de tables. Cela dépend de la relation entre les tables. Selon la norme ANSI, voici
les différents types de jointures utilisées en SQL :
32) Est-il possible de trier une colonne en utilisant un alias de colonne ?
Oui. Nous pouvons utiliser la méthode alias dans ORDER BY au lieu de la clause WHERE
pour trier une colonne. o JOINTURE INTERNE
o AUTO-JOINTURE
Un index clusterisé est une table ou une vue dans laquelle les données des lignes sont stockées. Dans une base de données relationnelle, si la colonne de la table contient une Les index autres que les index PRIM
clé primaire, MySQL crée automatiquement un index cluster nommé PRIMARY. index non clusterisés sont égaleme
La syntaxe suivante illustre le RIGHT JOIN :
1. SELECT colonnes_listes
2. DE table1
.
La jointure interne renvoie uniquement les enregistrements des tables qui
correspondent à la condition spécifiée et masque les autres lignes et colonnes. En
termes simples, il récupère les lignes lorsqu'il existe au moins une correspondance de
lignes entre les tables. Le mot-clé INNER JOIN joint les enregistrements correspondants
de deux tables. Il est supposé être une jointure par défaut, il est donc facultatif 39) Qu'est-ce qu'une jointure gauche en SQL ?
d'utiliser le mot-clé INNER avec la requête.
La jointure gauche est utilisée pour récupérer toutes les lignes de la table de gauche et
La représentation visuelle ci-dessous explique plus clairement cette jointure : les enregistrements communs entre les tables spécifiées. Il renvoie toutes les lignes de
la table de gauche même s'il n'y a pas de correspondances dans la table de droite. S'il
ne trouve aucun enregistrement correspondant dans la table de droite, il renvoie
null. Cette jointure peut également être appelée jointure externe gauche.
1. SELECT listes_colonnes
2. DE table1
La syntaxe suivante illustre le RIGHT JOIN :
3. INNER JOIN table2 SUR condition_jointure1
5. ...;
1. SELECT colonnes_listes
Pour lire plus d'informations, cliquez ici
2. DE table1
.
3. Tableau JOIN GAUCHE2
4. SUR condition_jointure ;
38) Qu'est-ce que le Right JOIN en SQL ?
Pour lire plus d'informations, cliquez ici
La jointure droite est utilisée pour récupérer toutes les lignes de la table de droite et
uniquement les lignes de l'autre table qui ont rempli la condition de jointure. Il renvoie
toutes les lignes de la table de droite même s'il n'y a pas de correspondance dans la .
table de gauche. S'il trouve des enregistrements sans correspondance dans la table de
gauche, il renvoie une valeur Null. Cette jointure est également connue sous le nom de
jointure externe droite.
Un SELF JOIN est nécessaire lorsque nous voulons combiner des données avec d'autres
données dans la même table elle-même. Il est souvent très utile de convertir une
structure hiérarchique en une structure plate.
3. WHERE join_conditions ;
Les déclencheurs SQL ont deux composants principaux, l'un est une action et l'autre
2. DE étudiant AS s1, étudiant s2
est un événement. Lorsque certaines actions sont entreprises, un événement se
produit à la suite de ces actions.
3. WHERE s1.student_id = s2 .student_id
Nous utilisons l'instruction CREATE TRIGGER pour créer un déclencheur en SQL. Voici
la syntaxe : 4. ET s1.id_course < > s2.id_course ;
Voici le résultat :
4. COMMENCER
Pour lire plus d'informations, cliquez ici
5. --déclarations de variables
.
6. --code déclencheur
7. FIN;
43) Quels sont les opérateurs d'ensemble en SQL ?
ENTRE Opérateur
Cet opérateur est utilisé pour sélectionner la plage de données entre deux valeurs. Les valeurs peuvent égalemen
et des dates.
La syntaxe suivante nous illustre comment créer une contrainte pour une table :
C. INTERSECT : cet opérateur renvoie les enregistrements communs de deux ou 3. contrainte de type de données column2,
plusieurs instructions SELECT. Il récupère toujours les enregistrements uniques et les
organise par défaut par ordre croissant. Ici, le nombre de colonnes et de types de
4. .........
données doit être le même. La syntaxe suivante illustre l'opérateur INTERSECT :
5. );
2. COUPER
Contraintes au niveau du tableau : ces contraintes s'appliquent à l'ensemble du
tableau et limitent le type de données pouvant être saisies.
3. SELECT colonnes FROM table2 ;
46) Comment écrire une requête SQL pour trouver les noms d'élèves commençant par
'A' ?
1. SELECT colonnes FROM table1
Nous pouvons écrire la requête suivante pour obtenir les détails de l'étudiant dont le
2. MOINS nom commence par A :
2. DE
3. (SELECT salaire
4. DES employés
6. LIMITE 3) AS Temp
47) Écrivez la requête SQL pour obtenir le troisième salaire maximum d'un employé à
1. SÉLECTIONNER LE TOP 1 des salaires
partir d'une table nommée employés.
2. DE
La requête suivante est le moyen le plus simple d'obtenir le troisième salaire maximum
d'un employé : 3. (SÉLECTIONNER LE SALAIRE DISTINCT TOP 3
4. DES employés
La principale différence entre eux est que l'instruction delete supprime les données
sans réinitialiser l'identité d'une table, tandis que la commande truncate réinitialise
l'identité d'une table particulière. Le tableau comparatif suivant l'explique plus
clairement :
Non. EFFACER
1) L'instruction delete supprime une ou plusieurs lignes d'une table existante en fonction de la condit
4) L'instruction DELETE est utilisée pour supprimer une ligne d'une table.
Voici la manière alternative d'obtenir le troisième salaire le plus élevé d'un employé :
6) Vous pouvez restaurer les données après avoir utilisé l'instruction DELETE.
1. SELECT salaire FROM employés Pour lire plus d'informations, cliquez ici
3. LIMITE 2, 1 ;
B. Utiliser la sous-requête 49) Qu'est-ce que la propriété ACID dans une base de données ?
Les propriétés ACID sont destinées à la transaction qui passe par un groupe de tâches
différent. Une transaction est un ordre logique unique de données. Il fournit des
propriétés pour maintenir la cohérence avant et après la transaction dans une base de
données. Il garantit également que les transactions de données sont traitées de
manière fiable dans un système de base de données.
o Une fonction doit avoir un nom, et le nom ne peut pas commencer par
La propriété ACID est un acronyme pour Atomicité, Cohérence, Isolation et Durabilité. un caractère spécial tel que @, $, # ou d'autres caractères similaires.
Atomicité : elle garantit que toutes les instructions ou opérations au sein de l'unité de o Les fonctions ne peuvent fonctionner qu'avec les instructions SELECT.
transaction doivent être exécutées avec succès. Si une partie de la transaction échoue,
la transaction entière échoue et l'état de la base de données reste inchangé. Ses
principales fonctionnalités sont COMMIT, ROLLBACK et AUTO-COMMIT. o Chaque fois qu'une fonction est appelée, elle compile.
Cohérence : cette propriété garantit que les données doivent respecter toutes les o Les fonctions doivent renvoyer une valeur ou un résultat.
règles de validation. En termes simples, nous pouvons dire que la base de données
change d'état uniquement lorsqu'une transaction sera validée avec succès. Il protège
également les données des plantages. o Les fonctions sont toujours utilisées avec des paramètres d'entrée.
Isolation : Cette propriété garantit que la propriété concurrente d'exécution dans SQL classe les fonctions en deux types :
l'unité de transaction doit être exploitée de manière indépendante. Cela garantit
également que les déclarations sont transparentes les unes pour les autres. L'objectif
principal de l'isolation est de contrôler la concurrence dans une base de données.
l'utilisateur.
Pour lire plus d'informations, cliquez ici
o Une valeur NULL est une valeur qui est 'indisponible, non attribuée,
o Pour modifier des éléments de données individuels
inconnue ou non applicable.' Il serait utilisé en l'absence de toute
o Pour manipuler la sortie
valeur. Nous pouvons effectuer des opérations arithmétiques
dessus. D'autre part, zéro est un nombre et un espace vide est traité
o Pour formater des dates et des nombres
Les fonctions SQL sont de simples extraits de code qui sont fréquemment utilisés et
réutilisés dans les systèmes de base de données pour le traitement et la manipulation
des données. Les fonctions sont les valeurs mesurées. Il effectue toujours une tâche
spécifique. Les règles suivantes doivent être rappelées lors de la création de fonctions :
1. SELECT LOWER ('STEPHEN') AS Case_Reault FROM double ;
Sortie : 200***
G) TRIM : Cette fonction est utilisée pour supprimer tous les caractères définis du
début, de la fin ou des deux. Il a également réduit les espaces supplémentaires. Par
exemple:
1. SELECT UPPER ('stephen') AS Case_Reault FROM double ;
Entrée : SELECT TRIM ('A' FROM 'ABCDCBA');
INITCAP : cette fonction est utilisée pour convertir des valeurs de caractères données
en majuscules pour les initiales de chaque mot. Cela signifie que chaque première Sortie : BCDCB
lettre du mot est convertie en majuscule et le reste en minuscule. L'exemple suivant
renverra le 'hello stephen' comme 'Hello Stephen' :
H) REMPLACER : Cette fonction est utilisée pour remplacer toutes les occurrences d'un
mot ou d'une partie de la chaîne (sous-chaîne) par l'autre valeur de chaîne
spécifiée. Par exemple:
Entrée : SELECT REPLACE ('C'est le meilleur café du célèbre café.', 'café', 'thé');
La fonction NVL() est utilisée pour convertir la valeur NULL en l'autre valeur. La fonction
Les fonctions de manipulation de caractères sont utilisées pour changer, extraire et
renvoie la valeur du deuxième paramètre si le premier paramètre est NULL. Si le
modifier la chaîne de caractères. Lorsqu'un ou plusieurs caractères et mots sont
premier paramètre est autre que NULL, il reste inchangé. Cette fonction est utilisée
transmis à la fonction, la fonction effectuera son opération sur ces chaînes d'entrée et
dans Oracle, pas dans SQL et MySQL. Au lieu de la fonction NVL(), MySQL a IFNULL() et
renverra le résultat.
SQL Server a la fonction ISNULL().
A) CONCAT : Cette fonction est utilisée pour joindre deux valeurs ou plus ensemble. Il
ajoute toujours la deuxième chaîne à la fin de la première chaîne. Par exemple:
55) Quelle fonction est utilisée pour renvoyer le reste dans un opérateur de division en
Produit : technologies de l'information La fonction MOD renvoie le reste d'une opération de division.
B) SUBSTR : Il est utilisé pour renvoyer la partie de la chaîne d'un point de départ
spécifié à un point final. Par exemple:
Entrée : SELECT SUBSTR ('Système de gestion de base de données', 9, 11) FROM DUAL ; 56) Quelle est la syntaxe et l'utilisation de la fonction COALESCE ?
Sortie : Gestion La fonction COALESCE() évalue les arguments dans l'ordre et renvoie la première valeur
NON-NULL dans un nombre spécifié d'expressions. S'il évalue les arguments comme
NULL ou s'il ne trouve aucune valeur NON-NULL, il renvoie le résultat NULL.
C) LONGUEUR : cette fonction renvoie la longueur de la chaîne en valeur numérique,
y compris les espaces vides. Par exemple:
La syntaxe de la fonction COALESCE est donnée ci-dessous :
Sortie : 16
D) INSTR : cette fonction trouve la position numérique exacte d'un caractère ou d'un
mot spécifié dans une chaîne donnée. Par exemple: 1. COALESCE (exp1, exp2, .... expn)
Sortie : 7
Sortie : ***200
Cette instruction renverra la sortie suivante :
Dans la sortie ci-dessous, nous pouvons voir que la première requête triera les données
de la table dans l'ordre croissant en fonction de la colonne de nom. Cependant, si nous
exécutons la deuxième requête en spécifiant le mot-clé DESC, l'ordre de la table est
modifié dans l'ordre décroissant.
Le mot-clé DISTINCT est utilisé pour s'assurer que la valeur extraite a toujours des
valeurs uniques. Il ne permet pas d'avoir des valeurs en double. Le mot-clé DISTINCT
est utilisé avec l'instruction SELECT et extrait différentes valeurs de la colonne de la
table. Nous pouvons l'utiliser à l'aide de la syntaxe suivante :
[condition] ;
Supposons que nous ayons une table 'client' contenant huit enregistrements dans
lesquels la colonne de nom contient des valeurs en double.
2. DES Étudiants
Réponse : Non. La requête ci-dessus ne renvoie pas la sortie car nous ne pouvons pas
utiliser la clause WHERE pour restreindre les groupes. Nous devons utiliser la clause
HAVING au lieu de la clause WHERE pour obtenir la sortie correcte.
La principale différence est que la clause WHERE est utilisée pour filtrer les
enregistrements avant l'établissement de tout regroupement, tandis que la clause
HAVING est utilisée pour filtrer les valeurs d'un groupe. Le tableau de comparaison ci-
dessous explique les différences les plus courantes :
58) Quel est l'ordre par défaut des données à l'aide de la clause ORDER BY ? Comment
La clause ORDER BY est utilisée pour trier les données de la table dans l'ordre croissant
ou décroissant. Par défaut, il triera le tableau par ordre croissant. Si nous voulons
Cette clause est implémentée dans les opérations de ligne. Cette clause est implémentée d
changer son comportement par défaut, nous devons utiliser le mot-clé DESC après le
nom de la colonne dans la clause ORDER BY.
Il ne permet pas de travailler avec des fonctions d'agrégation. Il peut fonctionner avec des fon
.
1. SELECT expressions FROM tables
2. conditions OÙ
1. nom_fonction (expression DISTINCT | ALL) La fonction RANK détermine le rang de chaque ligne de votre partition ordonnée dans
le jeu de résultats. Si les deux lignes se voient attribuer le même rang, le numéro
suivant dans le classement sera son rang précédent plus un certain nombre de
SQL fournit sept (7) fonctions d'agrégation, qui sont indiquées ci-dessous : numéros en double. Par exemple, si nous avons trois enregistrements au rang 4, le
rang suivant répertorié serait le rang 7.
La fonction DENSE_RANK attribue un rang unique à chaque ligne d'une partition selon
o AVG() : cette fonction est utilisée pour renvoyer la valeur moyenne des la valeur de colonne spécifiée sans aucun espace. Il spécifie toujours le classement
dans un ordre consécutif. Si les deux lignes sont affectées du même rang, cette
fonction leur attribuera le même rang, et le rang suivant étant le numéro séquentiel
colonnes spécifiées.
suivant. Par exemple, si nous avons 3 enregistrements au rang 4, le rang suivant
répertorié serait le rang 5.
o COUNT () : cette fonction est utilisée pour renvoyer le nombre de lignes
o MAX() : cette fonction est utilisée pour renvoyer la plus grande valeur 64) Est-il possible d'insérer implicitement une ligne pour la colonne d'identité ?
du groupe. Oui. Nous pouvons implicitement insérer une ligne pour la colonne d'identité. Voici un
exemple de faire ceci :
o MIN() : Cette fonction est utilisée pour retourner la plus petite valeur
parmi le groupe.
o SUM() : cette fonction est utilisée pour renvoyer le total des valeurs
1. DÉFINIR IDENTITY_INSERT TABLE1 SUR
additionnées (non nulles) de la colonne spécifiée.
2. INSERT INTO demo_table1 (id, nom, branche)
o FIRST() : Cette fonction est utilisée pour retourner la première valeur
3. SELECT id, nom, branche FROM demo_table2
d'une expression.
4. DÉSACTIVER IDENTITY_INSERT
expression.
65) Que sont les commentaires SQL ?
Les commentaires sont des explications ou des annotations dans les requêtes SQL qui
sont lisibles par les programmeurs. Il est utilisé pour rendre les instructions SQL plus
faciles à comprendre pour les humains. Lors de l'analyse du code SQL, il sera
62) Qu'est-ce que l'injection SQL ? ignoré. Les commentaires peuvent être écrits sur une seule ligne ou sur plusieurs
lignes.
L'injection SQL est un type de vulnérabilité dans le code des sites Web et des
applications Web qui permet aux attaquants de contrôler les opérations principales et
d'accéder, de récupérer et de détruire les données sensibles des bases de
données. Dans cette technique, des instructions SQL malveillantes sont insérées dans o Commentaires sur une seule ligne : il commence par deux traits
un champ d'entrée de base de données et, une fois exécutées, la base de données
devient vulnérable à un attaquant. Cette technique est couramment utilisée pour d'union consécutifs (--).
accéder à des données sensibles et effectuer des activités administratives sur des
bases de données en exploitant des applications pilotées par les données. Elle est
également connue sous le nom d'attaque SQLi. o Commentaires multi-lignes : il commence par /* et se termine par */.
données.