Vous êtes sur la page 1sur 22

Questions d'entretien chez Oracle o PL/SQL est intégré au dictionnaire de données Oracle.

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.

1) Quels sont les composants de la structure physique de la base de données Oracle ?


4) Qu'est-ce qu'une table PL/SQL ? Pourquoi est-il utilisé ?

Les composants de la structure physique de la base de données sont donnés ci-


Les objets de type tables sont appelés tables PL/SQL qui sont modélisées comme table
dessous.
de base de données. On peut aussi dire que les tables PL/SQL sont un moyen de fournir
des tableaux. Les tableaux sont comme des tables temporaires en mémoire qui sont
traitées très rapidement. Les tables PL/SQL sont utilisées pour déplacer des données
en masse. Ils simplifient le déplacement des collections de données.
o Un ou plusieurs fichiers de données.

o Deux fichiers de journalisation ou plus.

o Un ou plusieurs fichiers de contrôle. 5) Quels sont les types de données disponibles en PL/SQL ?

Il existe deux types de types de données en PL/SQL :

2) Quels sont les composants de la structure logique de la base de données dans la


1. Les types de données scalaires sont par exemple NUMBER, VARCHAR2,
base de données Oracle ?
DATE, CHAR, LONG, BOOLEAN etc.

Composants de la structure logique de la base de données.


2. Les types de données composites sont, par exemple, RECORD, TABLE,

etc.
o Tablespaces

o Objets de schéma de la base de donnée

6) Quelle est la structure de base de PL/SQL ?


Questions d'entretien PL/SQL

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.

Le bloc PL/SQL contient 3 sections.

1) Qu'est-ce que PL/SQL ?

1. La section Déclaration (facultative)


PL/SQL signifie extension de langage procédural à SQL. Il prend en charge les
fonctionnalités procédurales du langage de programmation et de SQL. Il a été
développé par Oracle Corporation au début des années 90 pour améliorer les capacités
2. La Section Exécution (obligatoire)
de SQL.

3. La section de gestion des exceptions (facultatif)

2) Quel est l'intérêt d'utiliser PL/SQL ?

7) Quelle est la différence entre FUNCTION, PROCEDURE AND PACKAGE en PL/SQL ?


PL/SQL est une extension de SQL. Alors que SQL est non procédural, PL/SQL est un
langage procédural conçu par Oracle. Il est inventé pour surmonter les limitations de
SQL. Fonction : Le but principal d'une fonction PL/SQL est généralement de calculer et de
renvoyer une valeur unique. Une fonction a un type de retour dans sa spécification et
doit retourner une valeur spécifiée dans ce type.

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:

8) Qu'est-ce qu'une exception ? Quels sont les types d'exceptions ?

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 ;

16) Quelles sont les exceptions prédéfinies en PL/SQL ?


9) Comment écrire une seule instruction qui concatène les mots ?Hello? et ?Monde? et

l'assigner dans une variable nommée Greeting ? Une liste d'exceptions prédéfinies en PL/SQL :

Message d'accueil := 'Bonjour' || 'Monde';

o DUP_VAL_ON_INDEX

o ZERO_DIVIDE

10) PL/SQL prend-il en charge la commande CREATE ?


o AUCUNE DONNÉE DISPONIBLE

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

12) En quoi l'exception est-elle différente de l'erreur ? o STORAGE_ERROR

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.

13) Quelle est la raison principale derrière l'utilisation d'un index ?

Accès plus rapide aux blocs de données dans la table.

17) Qu'est-ce qu'un déclencheur en PL/SQL ?

Un déclencheur est un programme PL/SQL stocké dans la base de données. Il est


exécuté immédiatement avant ou après l'exécution des commandes INSERT, UPDATE
14) Que sont les exceptions PL/SQL ? Dites-m'en trois. et DELETE.

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.

19) Combien de types de déclencheurs existent en PL/SQL ?


15) Comment déclarer une exception définie par l'utilisateur ?
Il existe 12 types de déclencheurs en PL/SQL qui contiennent la combinaison des mots-
clés BEFORE, AFTER, ROW, TABLE, INSERT, UPDATE, DELETE et ALL.
Vous pouvez déclarer les exceptions définies par l'utilisateur dans la section DECLARE,
avec le mot-clé EXCEPTION.
Une procédure stockée est une séquence d'instructions ou un bloc PL/SQL nommé qui
exécute une ou plusieurs fonctions spécifiques. Il est similaire à une procédure dans
o AVANT TOUT INSÉRER LA LIGNE
d'autres langages de programmation. Il est stocké dans la base de données et peut être
exécuté à plusieurs reprises. Il est stocké en tant qu'objet de schéma. Il peut être
imbriqué, appelé et paramétré.
o APRÈS TOUT INSÉRER LIGNE

o AVANT INSÉRER

o APRÈS INSÉRER, etc.


27) Quels sont les différents objets schémas qui peuvent être créés en PL/SQL ?

o Procédures et fonctions stockées

20) Quelle est la différence entre l'exécution de triggers et les procédures stockées ?
o Paquets

Un déclencheur est automatiquement exécuté sans aucune action requise par


l'utilisateur, tandis qu'une procédure stockée est explicitement invoquée par o Déclencheurs
l'utilisateur.

o Curseurs

21) Que se passe-t-il lorsqu'un déclencheur est associé à une vue ?

28) Que connaissez-vous des curseurs PL/SQL ?


Lorsqu'un déclencheur est associé à une vue, les déclencheurs de la table de base sont
normalement activés.
Oracle utilise des espaces de travail pour exécuter les commandes SQL. Lorsqu'Oracle
traite une commande SQL, il ouvre une zone dans la mémoire appelée Zone SQL
privée. Cette zone est identifiée par le curseur. Il permet aux programmeurs de
nommer cette zone et d'accéder à ses informations.

22) Quelle est l'utilisation de la clause WHEN dans le déclencheur ?

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.

ALTER TRIGGER update_salary DISABLE ;

30) Qu'obtiendrez-vous avec l'attribut de curseur SQL%ROWCOUNT ?

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.

Commande DROP TRIGGER.

31) Qu'obtiendrez-vous par l'attribut de curseur SQL%FOUND ?

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 ?

Les colonnes de table sont appelées THEN.column_name et NOW.column_name.

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.

Il renvoie la valeur booléenne TRUE si aucune ligne n'a été traitée.


Pour les déclencheurs liés à DELETE, les valeurs THEN.column_name sont disponibles
uniquement.

Pour les déclencheurs liés à UPDATE, les deux colonnes de table sont disponibles.

33) Qu'entendez-vous par packages PL/SQL ?

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 ?

Les packages PL/SQL comportent les deux parties suivantes :


40) Expliquez l'instruction Commit.

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 Les autres utilisateurs peuvent voir les modifications de données

apportées par la transaction.

35) Quelle commande est utilisée pour supprimer un package ?


o Les verrous acquis par la transaction sont libérés.

La commande DROP PACKAGE permet de supprimer un package.


o Le travail effectué par la transaction devient permanent.

36) Comment exécuter une procédure stockée ?


41) Expliquez l'instruction Rollback ?

Il existe deux façons d'exécuter une procédure stockée.


L'instruction Rollback est émise lorsque la transaction se termine. Les conditions
suivantes sont vraies pour une instruction Rollback :
A partir de l'invite SQL, écrivez EXECUTE ou EXEC suivi de nom_procédure.

o Le travail effectué dans une transition est annulé comme s'il n'avait

jamais été émis.

1. EXECUTE ou [ EXEC ] nom_procédure ;


o Tous les verrous acquis par transaction sont libérés.

Utilisez simplement le nom de la procédure

42) Expliquez l'instruction SAVEPOINT.

Avec SAVEPOINT, seule une partie de la transaction peut être annulée.


1. nom_procédure ;

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.

38) Quels sont les attributs de curseur utilisés en PL/SQL ?

44) Qu'est-ce que la cohérence ?


%ISOPEN : il vérifie si le curseur est ouvert ou non.

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.

Prenons un exemple : il y a deux utilisateurs A et B. A transfère de l'argent sur le compte


%FOUND : il vérifie si le curseur a récupéré une ligne. Si oui - VRAI.
de B. Ici, les modifications sont mises à jour dans le compte de A (débit) mais jusqu'à
ce qu'elles soient mises à jour sur le compte de B (crédit), jusque-là, les autres
utilisateurs ne peuvent pas voir le débit du compte de A. Après le débit de A et le crédit
%NOTFOUND : il vérifie si le curseur a récupéré une ligne. Si non - VRAI.
de B, on peut voir les mises à jour. C'est la cohérence.

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.

46) Combien de types de curseurs sont disponibles en PL/SQL ?

Il existe deux types de curseurs en PL/SQL.


8) Quelle est la relation entre la base de données, le tablespace et le fichier de

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.

9) Qu'est-ce qu'un instantané dans la base de données Oracle ?


3) Qu'est-ce qu'un tablespace ?

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).

6) Dans la version 9.3.0.5.0 d'Oracle, que montre chaque numéro ?

Le numéro de version Oracle fait référence :


11) Combien y a-t-il de couches de mémoire dans le pool partagé Oracle ?

o 9 - Numéro de version majeure de la base de données Les pools partagés Oracle contiennent deux couches :

o 3 - Numéro de version de maintenance de la base de données


1. cache de la bibliothèque

o 0 - Numéro de version du serveur d'applications


2. cache du dictionnaire de données

o 5 - Numéro de version spécifique au composant

o 0 - Numéro de version spécifique à la plate-forme


La commande ANALYZE est utilisée pour exécuter diverses fonctions sur l'index, la
12) Qu'est-ce qu'un point de sauvegarde dans la base de données Oracle ? table ou le cluster. La liste suivante spécifie l'utilisation de la commande ANALYZE dans
Oracle :

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.

o Il est utilisé pour valider la structure de l'objet.

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.

14) Quels sont les différents objets de la base de données Oracle ?

18) Pouvez-vous créer un synonyme sans avoir de tableau ?


Tableaux : C'est un ensemble d'éléments organisés de façon verticale et horizontale.

Oui. Nous pouvons créer un synonyme sans avoir de table de base.


Tablespaces : Il s'agit d'une unité de stockage logique dans Oracle.

Vues : C'est une table virtuelle dérivée d'une ou plusieurs tables.

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.

Synonymes : C'est un nom pour les tables.


o Auto-adhésion

o Jointure externe

15) Quelle est la différence entre la pré-sélection et la pré-requête ? o Équi-jointure

Un déclencheur de pré-requête se déclenche avant l'exécution de la requête et se


déclenche une fois pendant que vous essayez d'interroger. À l'aide de ce déclencheur,
vous pouvez modifier dynamiquement la partie de la clause where.

20) Quelle est l'utilisation du fichier de contrôle dans Oracle ?


La requête de présélection se déclenche pendant la requête d'exécution et le
traitement de la requête de comptage après que les formulaires Oracle ont construit
l'instruction de sélection à émettre, mais avant que l'instruction ne soit réellement Dans Oracle, le fichier de contrôle est utilisé pour la récupération de la base de
émise. données. Le fichier de contrôle est également utilisé pour identifier la base de données
et les fichiers de journalisation qui doivent être ouverts pour que le fonctionnement
de la base de données se poursuive, chaque fois qu'une instance d'une base de
Le déclencheur de pré-requête se déclenche avant le déclencheur de pré-sélection. données ORACLE démarre.

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 ?

o Module bibliothèque Pl/SQL


Il existe deux types de synonymes ou d'alias :

o Module de bibliothèque d'objets


Privé : Seul le propriétaire peut y accéder.

Public : il est accessible à tout utilisateur de la base de données.

17) Quelle est l'utilisation de la commande ANALYZE dans Oracle ?


23) A quoi servent les synonymes ? 28) À quoi servent les points de sauvegarde dans la base de données Oracle ?

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 fournit un accès public à un objet.

o Il fournit également la transparence de l'emplacement des tables, des


29) Quelle est la différence entre un commit post-base de données et un commit post-

vues ou des unités de programme d'une base de données distante.


formulaire ?

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.

24) Comment stocker des images dans une base de données ?


30) Qu'est-ce que la sauvegarde logique dans Oracle ?

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.

25) Qu'est-ce que le type de données BLOB dans Oracle ?


31) Qu'entendez-vous par mise en miroir des fichiers Redo Log ?

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.

26) Quelle est la différence entre TRANSLATE et REPLACE dans Oracle ?

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.

27) Quels sont les différents types d'objets de base de données ?

Une liste des différents types d'objets de base de données :


33) Quelles sont les limitations de la contrainte CHECK ?

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 Tablespaces : il s'agit d'une unité de stockage logique dans Oracle.

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.

o Synonymes : il s'agit d'un nom pour les tables.


35) À quoi sert l'option ROWS dans la commande IMP ?

L'option ROWS indique si les lignes du tableau doivent être importées.


1. PROCEDURE raise_sal(empid INTEGER ,
36) À quoi sert l'option INDEXES dans la commande IMP ?
amt REAL ) IS current_salary REAL ;

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 ?

38) À quoi sert l'option SHOW dans la commande IMP ?


Syntaxe : to_date (chaîne, format)

L'option SHOW spécifie quand la valeur de show=y, le DDL dans le fichier d'exportation
est affiché. Prenons un exemple :

1. to_date ( '2012-12-12' , 'AAAA/MM/JJ' )

39) À quoi sert le paramètre FILE dans la commande IMP ? Il reviendra le 12 décembre 2012 .

Le paramètre FILE permet de spécifier le nom du fichier d'export à importer. Plusieurs


fichiers peuvent être répertoriés, séparés par des virgules.

44) Comment trouvez-vous la date et l'heure actuelles dans Oracle ?

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

1. SELECT TO_CHAR (SYSDATE, 'MM-DD-YYYY


1. SELECT to_char ( to_date ( '12-12-2012' , 'DD-MM-YYYY' ) , 'YYYY-
HH24:MI:SS' ) "Current_Date" FROM DUAL ;
MM-DD' ) FROM double ;

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-

YYYY' ) FROM double ;


1. SELECT TO_CHAR (SYSDATE, 'YYYY-MM-DD

HH24:MI:SS' ) "Current_Date" FROM DUAL ;

41) Quels sont les paramètres réels et formels ?

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.

La procédure suivante déclare deux paramètres formels nommés empid et amt :


o Langage de contrôle des données (DCL) : Il contrôle l'accès aux 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

opérations de transaction dans la base de données. Les commandes de

cette catégorie sont COMMIT, ROLLBACK, SET TRANSACTION,

3) Quels sont les usages de SQL ? SAVEPOINT, etc.

SQL est responsable de la maintenance des données relationnelles et des structures


de données présentes dans la base de données. Certaines des utilisations courantes
sont données ci-dessous :

6) A quoi sert le langage DDL ?

o Pour exécuter des requêtes sur une base de données


DDL signifie langage de définition de données. C'est le sous-ensemble d'une base de
données qui définit la structure de données de la base de données lorsque la base de
o Pour récupérer des données d'une base de données données est créée. Par exemple, nous pouvons utiliser les commandes DDL pour
ajouter, supprimer ou modifier des tables. Il se compose des commandes suivantes :
CREATE, ALTER et DELETE des objets de base de données tels que schéma, tables,
o Pour insérer des enregistrements dans une base de données index, vue, séquence, etc.

o Pour mettre à jour des enregistrements dans une base de données Exemple

o Pour supprimer des enregistrements d'une base de données

o Pour créer de nouvelles bases de données

1. CRÉER TABLE Étudiants


o Pour créer de nouvelles tables dans une base de données

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 :

o Insérez des données dans la base de données via la commande INSERT.


5) Quels sont les sous-ensembles de SQL ?

o Récupérez les données de la base de données via la commande SELECT.


Voici les quatre sous-ensembles significatifs du SQL :

o Mettez à jour les données de la base de données via la commande

o Langage de définition de données (DDL) : il définit la structure de UPDATE.

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

o Langage de manipulation de données (DML) : Il est utilisé pour

manipuler les données existantes dans la base de données. Les

commandes de cette catégorie sont SELECT, UPDATE, INSERT, etc.


La clé étrangère est utilisée pour lier une ou plusieurs tables entre elles. Elle est
également connue sous le nom de clé de référencement. Une clé étrangère est
1. INSÉRER DANS LES VALEURS ÉTUDIANTES (111, 'George',
spécifiée en tant que clé liée à la clé primaire d'une autre table. Cela signifie qu'un
champ de clé étrangère dans une table fait référence au champ de clé primaire de
'Informatique') l'autre table. Il identifie chaque ligne d'une autre table de manière unique qui
maintient l'intégrité référentielle. La relation clé primaire-clé étrangère est une
relation très cruciale car elle maintient parfois les propriétés ACID de la base de
données. Il empêche également les actions qui détruiraient les liens entre les tables
enfant et parent.

8) A quoi sert le langage DCL ?


Nous pouvons définir une clé étrangère dans une table comme suit :

Le langage de contrôle des données permet aux utilisateurs de contrôler l'accès et la


gestion des autorisations à la base de données. C'est le sous-ensemble d'une base de
données, qui décide quelle partie de la base de données doit être accessible par quel
utilisateur à quel moment. Il comprend deux commandes, GRANT et REVOKE.

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

1. GRANT * ON mydb.Student TO javatpoint@localhsot ; 12) Qu'est-ce qu'une clé unique ?

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,

Exemple 3. col2 type de données UNIQUE,

4. ...
Tableau : Étudiant

5. );
Champ : Stud_rollno, Stud_name, Date de naissance, Branche, etc.

Pour lire plus d'informations, cliquez ici

10) Qu'est-ce qu'une clé primaire ?

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

11) Qu'est-ce qu'une clé étrangère ?


La clé primaire agit comme un identifiant unique pour chaque enregistrement de la table.
Nous ne pouvons pas stocker les valeurs NULL dans la colonne de clé primaire. Nous pouvons stocker la valeur NULL dans la colonne de clé unique, mais un se

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.

Les systèmes de gestion de base de données peuvent être classés en plusieurs


Pour lire plus d'informations, cliquez ici
types. Certaines des listes importantes sont données ci-dessous:

o Bases de données hiérarchiques (SGBD)

14) Qu'est-ce qu'une base de données ? o Bases de données réseau (IDMS)

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 Bases de données de graphes


Voici les caractéristiques communes d'une base de données :

o Bases de données de modèles ER

o Gère de grandes quantités de données


o Bases de données NoSQL

o Exact

o Facile à mettre à jour


17) Qu'est-ce qu'un SGBDR ?
o Sécurité
RDBMS signifie système de gestion de base de données relationnelle. C'est un système
de gestion de base de données basé sur un modèle relationnel. Il vous facilite la
o Intégrité des données
manipulation des données stockées dans les tables en utilisant des opérateurs
relationnels. RDBMS stocke les données dans la collection de tables et relie facilement
ces tables à l'aide des opérateurs relationnels chaque fois que nécessaire. Des
o Données faciles à rechercher
exemples de systèmes de gestion de bases de données relationnelles sont Microsoft
Access, MySQL, SQL Server, la base de données Oracle, etc.

15) Qu'entend-on par SGBD ?


18) Qu'est-ce que la normalisation dans une base de données ?
SGBD est synonyme de système de gestion de base de données. Il s'agit d'un logiciel
qui fonctionne principalement comme une interface entre la base de données et
La normalisation est utilisée pour minimiser la redondance et la dépendance en
l'utilisateur final. Il nous fournit le pouvoir tel que la gestion des données, le moteur
organisant les champs et la table d'une base de données.
de base de données et le schéma de base de données pour faciliter l'organisation et la
manipulation des données à l'aide d'une simple requête en un rien de temps. C'est
comme un gestionnaire de fichiers qui gère les données dans une base de données Il existe certaines règles de normalisation de la base de données, communément
plutôt que de les enregistrer dans des systèmes de fichiers. Sans le système de gestion appelées Normal From, et elles sont :
de base de données, il serait beaucoup plus difficile pour l'utilisateur d'accéder aux
données de la base de données.

Voici les composants d'un SGBD : o Première forme normale (1NF)

o Deuxième forme normale (2NF)


o Logiciel
o Troisième forme normale (3NF)
o Données
o Forme normale de Boyce-Codd (BCNF)
o Procédures
En utilisant ces étapes, la redondance, les anomalies, l'incohérence des données dans
la base de données peuvent être supprimées.
o Langues de la base de données

o Processeur de requête

o Gestionnaire de base de données


19) Quelle est l'utilisation principale de la normalisation ?

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.

o Opérateurs de comparaison : Ces opérateurs sont utilisés pour


20) Quels sont les inconvénients de ne pas effectuer la normalisation de la base de

effectuer des comparaisons de deux valeurs et vérifier si elles sont


données ?

identiques ou non. Il comprend égal à (=), différent de (!= ou <>),


Les inconvénients majeurs sont :

inférieur à (<), supérieur à (>), inférieur ou égal à (<=), supérieur ou égal


L'apparition de termes redondants dans la base de données entraîne un gaspillage
d'espace sur le disque.
à (>=) , pas moins de (!<), pas plus de (!>), etc.

En raison de termes redondants, des incohérences peuvent également survenir. Si une


modification est apportée aux données d'une table mais pas aux mêmes données
o Opérateurs au niveau des bits : Il est utilisé pour faire des
d'une autre table, une incohérence se produira. Cette incohérence entraînera un
problème de maintenance et affectera également les propriétés ACID. manipulations de bits entre deux expressions de type entier. Il effectue

d'abord la conversion des entiers en bits binaires, puis applique des

opérateurs tels que ET (symbole &), OU (|, ^), PAS (~), etc.

21) Qu'est-ce qu'une dépendance incohérente ?


o Opérateurs composés : ces opérateurs effectuent des opérations sur

Une dépendance incohérente fait référence à la difficulté d'obtenir des données


pertinentes en raison d'un chemin d'accès manquant ou interrompu vers les une variable avant de définir le résultat de la variable sur le résultat de
données. Cela conduit les utilisateurs à rechercher les données dans la mauvaise table,
ce qui entraîne une erreur en sortie. l'opération. Il comprend Ajouter égal (+=), soustraire égal (-=),

multiplier égal (*=), diviser égal (/=), modulo égal (%=), etc.

o Opérateurs de chaîne : ces opérateurs sont principalement utilisés


22) Qu'est-ce que la dénormalisation dans une base de données ?
pour effectuer la concaténation et la mise en correspondance de
La dénormalisation est une technique utilisée par les administrateurs de base de
données pour optimiser l'efficacité de leur infrastructure de base de données. Le modèles de chaînes. Il comprend + (Concaténation de chaînes), +=
concept de dénormalisation est basé sur la normalisation, qui est définie comme
l'organisation correcte d'une base de données en tables dans un but particulier. Cette
méthode nous permet d'ajouter des données redondantes dans une base de données (Affectation de concaténation de chaînes), % (Caractère générique), []
normalisée pour atténuer les problèmes liés aux requêtes de base de données qui
fusionnent les données de plusieurs tables en une seule table. Il ajoute des termes (Correspondance(s) de caractère), [^] (Caractère(s) ne correspondant
redondants dans les tables pour éviter les jointures complexes et de nombreuses
autres opérations complexes.
pas), _ (Le caractère générique correspond à un caractère ), etc.

La dénormalisation ne signifie pas que la normalisation ne sera pas effectuée. Il s'agit


d'une stratégie d'optimisation qui intervient après le processus de normalisation.

24) Qu'est-ce qu'une vue en SQL ?

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 :

o Opérateurs arithmétiques : Ces opérateurs sont utilisés pour effectuer

des opérations mathématiques sur des données numériques. Les

catégories de ces opérateurs sont l'addition (+), la soustraction (-), la

multiplication (*), la division (/), le reste/module (%), etc.

L'utilisation principale d'une vue est d'implémenter le mécanisme de sécurité. C'est


o Opérateurs logiques : ces opérateurs évaluent les expressions et l'objet consultable où nous pouvons utiliser une requête pour rechercher la vue que
nous utilisons pour la table. Il affiche uniquement les données renvoyées par la
requête qui a été déclarée lors de la création de la vue.
renvoient leurs résultats sous la forme Vrai ou Faux. Cet opérateur

Nous pouvons créer une vue en utilisant la syntaxe suivante :


1. CRÉER UN INDEX UNIQUE nom_index

2. ON nom_table (index_column1, index_column2,...);


1. CREATE VIEW nom_vue AS

2. SELECT listes_colonnes FROM nom_table Exemple

3. OÙ condition ;

25) Qu'est-ce qu'un Index en SQL ? 1. CRÉER TABLE Employé(

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 :

26) Quels sont les différents types d'index en SQL ?


1. CREATE UNIQUE INDEX index_name_phone ON Employé
Les index SQL ne sont rien de plus qu'une technique de minimisation du coût de la
requête. Plus le coût de la requête est élevé, plus les performances de la requête sont (téléphone);
mauvaises. Voici les différents types d'index pris en charge dans SQL :

Pour lire plus d'informations, cliquez ici

o Index unique .

o Index clusterisé

28) Qu'est-ce qu'un index clusterisé en SQL ?


o Index non 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

29) Qu'est-ce que l'index non clusterisé en SQL ?

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

Un index clusterisé contient toujours un ID d'index de 0.


SQL ou Structured Query Language est utile pour gérer nos bases de données relationnelles. Il MySQL est le système de gestion de base de données populaire utilisé pour gérer la base de données SQ
est utilisé pour interroger et exploiter la base de données. relationnelle. Il s'agit d'une base de données rapide, évolutive et facile à utiliser. sto
Pour lire plus d'informations, cliquez ici
SQL est apparu pour la première fois en 1974. MySQL est apparu pour la première fois le 23 mai 1995. SQ

.
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

o JOINTURE EXTERNE GAUCHE


33) Quelle est la différence entre les index clusterisés et non clusterisés en SQL ?

o JOINT EXTERNE DROIT


L'indexation est une méthode pour obtenir les données demandées très rapidement. Il
existe principalement deux types d'index dans SQL, l'index clusterisé et l'index non
clusterisé. Les différences entre ces deux index sont très importantes du point de vue o JOINT EXTERNE COMPLET
des performances SQL. Le tableau comparatif suivant explique leurs principales
différences :
o JOINT CROISÉ

Index clusterisé Index non clusterisé

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

3. JOINTURE DROITE table2


.
4. SUR condition_jointure ;

Pour lire plus d'informations, cliquez ici


37) Qu'est-ce qu'INNER JOIN en SQL ?

.
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.

La représentation visuelle suivante l'explique plus clairement :

La syntaxe suivante illustre l'INNER JOIN :

1. SELECT listes_colonnes

2. DE table1
La syntaxe suivante illustre le RIGHT JOIN :
3. INNER JOIN table2 SUR condition_jointure1

4. INNER JOIN table3 SUR condition_jointure2

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.

40) Qu'est-ce que la jointure complète en SQL ?


La représentation visuelle ci-dessous explique plus clairement cette jointure :
La jointure complète résulte d'une combinaison de jointures gauche et droite qui
contient tous les enregistrements des deux tables. Il récupère les lignes lorsqu'il existe
des lignes correspondantes dans l'une des tables. Cela signifie qu'il renvoie toutes les
lignes de la table de gauche et toutes les lignes des tables de droite. Si aucune
correspondance n'est trouvée, il met la valeur NULL. Il est également connu sous le
nom de FULL OUTER JOIN.
La représentation visuelle suivante l'explique plus clairement : Un SELF JOIN est utilisé pour joindre une table avec elle-même. Cette jointure peut
être effectuée à l'aide d'alias de table, ce qui nous permet d'éviter de répéter le même
nom de table dans une seule phrase. Cela générera une erreur si nous utilisons le
même nom de table plus d'une fois dans une seule requête sans utiliser d'alias de table.

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.

La syntaxe suivante illustre le SELF JOIN :

La syntaxe suivante illustre le FULL JOIN :


1. SELECT listes_colonnes

2. DE table1 AS T1, table1 AS T2

3. WHERE join_conditions ;

1. SÉLECTIONNER * À PARTIR de la table1


Exemple

2. FULL OUTER JOIN table2


Supposons que nous ayons une table 'Student' ayant les données suivantes :
3. SUR condition_jointure ;

Pour lire plus d'informations, cliquez ici

Si nous voulons récupérer le student_id et le nom de la table où student_id est égal et


41) Qu'est-ce qu'un "TRIGGER" en SQL ? course_id n'est pas égal, cela peut être fait en utilisant l'auto-jointure :

Un déclencheur est un ensemble d'instructions SQL qui résident dans un catalogue


système. Il s'agit d'un type spécial de procédure stockée qui est appelée
automatiquement en réponse à un événement. Cela nous permet d'exécuter un lot de
code lorsqu'une commande d'insertion, de mise à jour ou de suppression est exécutée
sur une table spécifique, car le déclencheur est l'ensemble des actions activées chaque
fois que des commandes DML sont données au système.
1. SELECT s1.student_id, s1.name

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 :

1. CREATE TRIGGER nom_trigger

2. (APRÈS | AVANT) (INSÉRER | MISE À JOUR | SUPPRIMER)

3. ON nom_table POUR CHAQUE LIGNE

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 ?

Pour lire plus d'informations, cliquez ici


Nous utilisons les opérateurs d'ensemble pour fusionner les données d'une ou
plusieurs tables du même type. Bien que les opérateurs d'ensemble soient comme les
. jointures SQL, il existe une différence significative. Les jointures SQL combinent des
colonnes de tables distinctes, tandis que les opérateurs d'ensemble SQL combinent
des lignes de différentes requêtes. Les requêtes SQL qui contiennent des opérations
d'ensemble sont appelées requêtes composées. Les opérateurs d'ensemble en SQL
sont des catégories de quatre types différents :
42) Qu'est-ce que l'auto-jointure et quelle est l'exigence de l'auto-jointure ?
44) Quelle est la différence entre les opérateurs IN et BETWEEN ?

Le tableau comparatif suivant explique leurs principales différences :

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.

A. UNION : Il combine deux ou plusieurs résultats de plusieurs requêtes SELECT en un


seul ensemble de résultats. Il a une fonctionnalité par défaut pour supprimer les lignes Il renvoie les enregistrements dont la valeur de colonne se situe entre la plage définie.
en double des tables. La syntaxe suivante illustre l'opérateur Union :
La syntaxe suivante illustre cet
SELECT * FROM
WHERE nom_colonne BETWEEN 'valeur1' AND 'valeur2';

1. SELECT colonnes FROM table1


45) Qu'est-ce qu'une contrainte ? Parlez-moi de ses différents niveaux.
2. SYNDICAT
La contrainte est utilisée pour spécifier la règle et les réglementations qui autorisent
3. SELECT colonnes FROM table2 ; ou restreignent les valeurs/données qui seront stockées dans la table. Il garantit
l'exactitude et l'intégrité des données à l'intérieur de la table. Cela nous oblige à
stocker des données valides et nous empêche de stocker des données non
B. UNION ALL : cet opérateur est similaire à l'opérateur Union, mais il ne supprime pas pertinentes. Si une interruption se produit entre la contrainte et l'action de données,
les lignes en double de la sortie des instructions SELECT. La syntaxe suivante illustre l'action échoue. Certaines des contraintes les plus couramment utilisées sont NOT
l'opérateur UNION ALL : NULL, PRIMARY KEY, FOREIGN KEY, AUTO_INCREMENT, UNIQUE KEY, etc.

La syntaxe suivante nous illustre comment créer une contrainte pour une table :

1. SELECT colonnes FROM table1

2. UNION TOUS 1. CREATE TABLE nom_table (

3. SELECT colonnes FROM table2 ; 2. contrainte de type de données colonne1,

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. );

SQL classe les contraintes en deux niveaux :

Contraintes au niveau de la colonne : ces contraintes ne s'appliquent qu'à une seule


1. SELECT colonnes FROM table1 colonne et limitent le type de données pouvant être stockées dans cette colonne.

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 ;

Pour lire plus d'informations, cliquez ici


D. MOINS : cet opérateur renvoie les enregistrements de la première requête, qui ne
sont pas trouvés dans la deuxième requête. Il ne renvoie pas de valeurs en double. La
syntaxe suivante illustre l'opérateur MOINS : .

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 :

3. SELECT colonnes FROM table2 ;

Pour lire plus d'informations, cliquez ici

. 1. SELECT * FROM étudiant WHERE stud_name like 'A%' ;


Voici l'exemple de démonstration où nous avons une table nommée étudiant qui
contient deux noms commençant par le caractère 'A'.
1. SÉLECTIONNER le salaire

2. DE

3. (SELECT salaire

4. DES employés

5. ORDER BY salaire DESC

6. LIMITE 3) AS Temp

7. ORDRE PAR LIMITE salariale 1 ;

C. Utilisation du mot-clé TOP

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

5. ORDER BY salaire DESC) AS Temp

6. ORDRE PAR salaire ASC ;


1. SELECT * FROM `employés` ORDER BY `salaire` DESC LIMIT 1 OFFSET 2

Voici l'exemple de démonstration qui montre comment obtenir le troisième salaire


maximum d'un employé.
48) Quelle est la différence entre les instructions DELETE et TRUNCATE en SQL ?

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

2) DELETE est une commande DML.

3) Nous pouvons utiliser la clause WHERE dans la commande DELETE.

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é :

5) DELETE est plus lent car il a conservé le journal.


A. Utilisation du mot-clé LIMIT

6) Vous pouvez restaurer les données après avoir utilisé l'instruction DELETE.

sept) La requête DELETE prend plus d'espace.

1. SELECT salaire FROM employés Pour lire plus d'informations, cliquez ici

2. ORDER BY salaire DESC .

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.

o Fonction définie par l'utilisateur : les fonctions créées par un utilisateur


Durabilité : Cette propriété garantit qu'une fois qu'une transaction a été validée, elle
persiste de manière permanente même si le système tombe en panne, en cas de en fonction de ses besoins sont appelées fonctions définies par
coupure de courant ou en cas de panne.

l'utilisateur.
Pour lire plus d'informations, cliquez ici

o Fonction définie par le système : les fonctions dont la définition est


.
définie par le système sont appelées fonctions définies par le

système. Ce sont des fonctions de base de données intégrées.


50) Est-ce qu'un espace vide ou zéro est identique à une valeur NULL ?

Les fonctions SQL sont utilisées aux fins suivantes :


Non. La valeur NULL n'est pas la même chose que zéro ou un espace vide. Les points
suivants expliquent leurs principales différences :

o Pour effectuer des calculs sur des données

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

comme un caractère. o Pour convertir des types de données

o La valeur NULL peut être traitée comme une valeur inconnue et

manquante, mais les zéros et les espaces blancs diffèrent de la valeur


52) Qu'entend-on par fonctions de manipulation de cas ? Explique ses différents types
NULL.
en SQL.

o Nous pouvons comparer un espace vide ou un zéro à un autre espace


Les fonctions de manipulation de casse font partie des fonctions de caractère. Il
convertit les données de l'état dans lequel elles sont déjà stockées dans la table en
vide ou un zéro. D'autre part, un NULL peut ne pas être identique à un majuscules, minuscules ou mixtes. La conversion effectuée par cette fonction peut être
utilisée pour formater la sortie. Nous pouvons l'utiliser dans presque toutes les parties
autre NULL. NULL indique qu'aucune donnée n'a été fournie ou de l'instruction SQL. Les fonctions de manipulation de casse sont principalement
utilisées lorsque vous devez rechercher des données et que vous n'avez aucune idée
que les données que vous recherchez sont en minuscules ou en majuscules.
qu'aucune donnée n'existe.

Il existe trois fonctions de manipulation de casse en SQL :

MINUSCULE : Cette fonction permet de convertir un caractère donné en


minuscule. L'exemple suivant renverra le 'STEPHEN' comme 'stephen' :
51) Que sont les fonctions et leur utilisation en SQL ?

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 ;

REMARQUE : Ici, 'dual' est une table fictive.


UPPER : Cette fonction permet de convertir un caractère donné en Entrée : SÉLECTIONNER RPAD ('200', 6, '*');
majuscule. L'exemple suivant renverra le 'stephen' comme 'STEPHEN' :

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é');

1. SELECT INITCAP ('hello stephen') AS Case_Reault FROM dual ;


Sortie : C'est le meilleur thé du célèbre salon de thé.

53) Expliquez les fonctions de manipulation de caractères ? Explique ses différents


54) A quoi sert la fonction NVL() ?
types en SQL.

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().

Voici les fonctions de manipulation de caractères en SQL :

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

Entrée : SELECT CONCAT ('Information-', 'technologie') FROM DUAL ; SQL ?

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 :

Entrée : SELECT LENGTH ('Hello Javatpoint') FROM DUAL ;

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)

Entrée : SELECT INSTR ('Bonjour Javatpoint', 'Javatpoint'); Exemple:

Sortie : 7

E) LPAD : Il renvoie le remplissage de la valeur du caractère de gauche pour une valeur


justifiée à droite. Par exemple:
1. SELECT COALESCE(NULL, 'Bonjour', 'Javatpoint', NULL) COMME
Entrée : SÉLECTIONNER LPAD ('200', 6, '*');
Résultat ;

Sortie : ***200
Cette instruction renverra la sortie suivante :

F) RPAD : il renvoie le remplissage de la valeur du caractère de droite pour la valeur


justifiée à gauche. Par exemple:
Nous avons pris une table client dans l'exemple précédent. Maintenant, nous allons
également démontrer la clause ORDER BY.

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.

57) Comment utilisons-nous l'instruction DISTINCT ? Quelle est son utilisation ?

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 :

1. SELECT DISTINCT listes_colonnes FROM nom_table WHERE

[condition] ;

Supposons que nous ayons une table 'client' contenant huit enregistrements dans
lesquels la colonne de nom contient des valeurs en double.

59) La requête suivante renvoie-t-elle la sortie ?

1. SELECT code_sujet, AVG (notes)

2. DES Étudiants

3. OÙ AVG (points) > 70


Si nous voulons obtenir la colonne de nom sans aucune valeur en double, le mot-clé
DISTINCT est requis. L'exécution de la commande ci-dessous renverra une colonne de
nom avec des valeurs uniques. 4. GROUP BY code_sujet ;

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.

60) Quelle est la différence entre les clauses WHERE et HAVING ?

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

pourrait-il être changé?


OÙ AYANT

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

La syntaxe pour ce faire est donnée ci-dessous :


Cette clause peut être utilisée avec les instructions SELECT, UPDATE et Cette clause ne peut être utilisé
DELETE.

.
1. SELECT expressions FROM tables

2. conditions OÙ

61) Combien de fonctions Aggregate sont disponibles en SQL ?


3. ORDRE PAR expression [ASC | DESC] ;
La fonction d'agrégation est utilisée pour déterminer et calculer plusieurs valeurs dans
une table et renvoyer le résultat sous la forme d'un nombre unique. Par exemple, la
moyenne de toutes les valeurs, la somme de toutes les valeurs et la valeur maximale
o Examinez la base de données pour extraire des informations concernant
et minimale parmi des groupes particuliers de valeurs.
la version et la structure de la base de données.

La syntaxe suivante illustre l'utilisation des fonctions d'agrégation :

63) Quelle est la différence entre les fonctions RANK() et DENSE_RANK() ?

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

du tableau, y compris les lignes avec des valeurs nulles.

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

o LAST() : Cette fonction permet de retourner la dernière valeur d'une

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 */.

Voici quelques exemples courants d'injection SQL :

o Accéder à des données confidentielles pour modifier une requête SQL

afin d'obtenir les résultats souhaités.

o UNION attaque pour voler des données de différentes tables de base de

données.

Vous aimerez peut-être aussi