Top 50 des questions et réponses des entretiens avec Oracle (2024)

Questions d'entretien Oracle SQL pour débutants et expérimentés

Voici les questions et réponses d'entretien d'Oracle pour les candidats développeurs SQL plus récents et plus expérimentés pour obtenir l'emploi de leurs rêves.

 1) Différence entre les types de données varchar et varchar2 ?

Varchar peut stocker jusqu'à 2000 octets et varchar2 peut stocker jusqu'à 4000 octets. Varchar occupera de l'espace pour les valeurs NULL et Varchar2 n'occupera aucun espace. Les deux sont différents par rapport à l'espace.

Téléchargement gratuit de PDF : Questions et réponses d'entretien Oracle


2) Dans quelle langue Oracle a été développé ?

Oracle a été développé en langage C.


 3) Qu'est-ce que le type de données RAW ?

Le type de données RAW est utilisé pour stocker des valeurs au format de données binaires. La taille maximale d'un raw dans une table est de 32767 octets.


4) A quoi sert la fonction NVL ?

La fonction NVL est utilisée pour remplacer les valeurs NULL par une autre valeur ou une valeur donnée. L'exemple est -

NVL(Valeur, remplacer la valeur)


5) Si des commandes sont utilisées pour le calcul des mois ? Si c'est vrai, que sont-ils?

Dans Oracle, la fonction month_between est utilisée pour trouver le nombre de mois entre les dates données. L'exemple est -

Mois_entre(Date 1, Date 2)


6) Que sont les tables imbriquées ?

La table imbriquée est un type de données dans Oracle qui est utilisé pour prendre en charge les colonnes contenant des attributs à plusieurs valeurs. Il contient également une sous-table entière.


7) Qu'est-ce que la fonction COALESCE ?

La fonction COALESCE est utilisée pour renvoyer la valeur définie comme non nulle dans la liste. Si toutes les valeurs de la liste sont nulles, la fonction coalesce renverra NULL.

Coalesce(value1, value2,value3,…)

8) Qu'est-ce que le type de données BLOB ?

Un type de données BLOB est une chaîne binaire de longueur variable utilisée pour stocker une mémoire de deux gigaoctets. La longueur doit être spécifiée en octets pour BLOB.

Questions d'entretien chez Oracle
Questions d'entretien chez Oracle

9) Comment représentons-nous les commentaires dans Oracle ?

Les commentaires dans Oracle peuvent être représentés de deux manières -

  1. Deux tirets (–) avant le début de la ligne – Instruction unique
  2. /*—— */ est utilisé pour le représenter sous forme de commentaires pour le bloc d'instructions

10) Qu'est-ce que la DML ?

Le langage de manipulation de données (DML) est utilisé pour accéder aux données et les manipuler dans les objets existants. Les instructions DML sont insert, select, update et delete et ne valideront pas implicitement la transaction en cours.


11) Quelle est la différence entre TRADUIRE et REMPLACER ?

Traduire est utilisé pour la substitution caractère par caractère et Remplacer est utilisé pour remplacer un seul caractère par un mot.


12) Comment afficher les lignes du tableau sans doublons ?

Les lignes en double peuvent être supprimées à l'aide du mot-clé DISTINCT dans l'instruction select.


13) Quelle est l'utilisation de la déclaration de fusion ?

L'instruction de fusion est utilisée pour sélectionner des lignes d'une ou plusieurs sources de données pour la mise à jour et l'insertion dans une table ou une vue. Il est utilisé pour combiner plusieurs opérations.


14) Qu'est-ce que la valeur NULL dans Oracle ?

La valeur NULL représente des données manquantes ou inconnues. Ceci est utilisé comme espace réservé ou représenté comme entrée par défaut pour indiquer qu'aucune donnée réelle n'est présente.


15) Qu'est-ce que la clause USING et donner un exemple ?

La clause USING est utilisée pour spécifier avec la colonne à tester l'égalité lorsque deux tables sont jointes.

[sql]Sélectionnez * dans l'adhésion des employés salaire en utilisant l'identifiant de l'employé[/sql]

Les tables d'employés se joignent aux tables de salaire avec l'ID d'employé.


16) Qu'est-ce qu'une table de clés conservées ?

Une table est définie comme table à clé préservée si chaque clé de la table peut également être la clé du résultat de la jointure. Il garantit de ne renvoyer qu'une seule copie de chaque ligne de la table de base.


17) Qu'est-ce que l'OPTION AVEC CHEQUE ?

La clause d'option WITH CHECK spécifie le niveau de vérification à effectuer dans les instructions DML. Il est utilisé pour empêcher les modifications d'une vue qui produiraient des résultats qui ne sont pas inclus dans la sous-requête.


18) A quoi servent les fonctions Aggregate dans Oracle ?

La fonction d'agrégation est une fonction dans laquelle les valeurs de plusieurs lignes ou enregistrements sont réunies pour obtenir une sortie de valeur unique. Les fonctions d'agrégation courantes sont -

  • Moyen
  • que vous avez
  • Somme

19) Qu'entendez-vous par clause GROUP BY ?

Une clause GROUP BY peut être utilisée dans l'instruction select où elle collectera des données sur plusieurs enregistrements et regroupera les résultats par une ou plusieurs colonnes.


20) Qu'est-ce qu'une sous-requête et quels sont les différents types de sous-requêtes ?

La sous-requête est également appelée requête imbriquée ou requête interne, qui est utilisée pour obtenir des données à partir de plusieurs tables. Une sous-requête est ajoutée dans la clause where de la requête principale.

Il existe deux types de sous-requêtes :

  • Sous-requête corrélée

Une sous-requête corrélée ne peut pas être une requête indépendante, mais peut référencer une colonne dans une table répertoriée dans la liste de provenance de la requête externe.

  • Sous-requête non corrélée

Cela peut être évalué comme s'il s'agissait d'une requête indépendante. Les résultats de la sous-requête sont soumis à la requête principale ou à la requête parent.


21) Qu'est-ce qu'une jointure croisée ?

La jointure croisée est définie comme le produit cartésien des enregistrements des tables présentes dans la jointure. La jointure croisée produira un résultat qui combine chaque ligne de la première table avec chaque ligne de la deuxième table.


22) Que sont les types de données temporelles dans Oracle ?

Oracle fournit les types de données temporelles suivants :

  • Type de données de date - Différents formats de dates
  • Type de données TimeStamp - Différents formats d'horodatage
  • Type de données d'intervalle - Intervalle entre les dates et l'heure

23) Comment créer des privilèges dans Oracle ?

Un privilège n'est rien d'autre que le droit d'exécuter une SQL requête ou pour accéder à un autre objet utilisateur. Le privilège peut être accordé en tant que privilège système ou privilège utilisateur.

[sql]GRANT user1 TO user2 WITH MANAGER OPTION;[/sql]

24) Qu'est-ce que VArray ?

VArray est un type de données oracle utilisé pour avoir des colonnes contenant des attributs à plusieurs valeurs et il peut contenir un tableau délimité de valeurs.


25) Comment obtient-on les détails des champs d'une table ?

Décrire est utilisé pour obtenir les détails du champ d'une table spécifiée.


26) Quelle est la différence entre renommer et alias ?

Renommer est un nom permanent donné à une table ou à une colonne alors qu'Alias ​​est un nom temporaire donné à une table ou une colonne. Renommer n'est rien d'autre qu'un remplacement de nom et Alias ​​est un nom alternatif de la table ou de la colonne.


27) Qu'est-ce qu'une vue ?

La vue est une table logique basée sur une ou plusieurs tables ou vues. Les tables sur lesquelles la vue est basée sont appelées tables de base et ne contiennent pas de données.


28) Qu'est-ce qu'une variable de curseur ?

Une variable de curseur est associée à différentes instructions qui peuvent contenir différentes valeurs au moment de l'exécution. Une variable de curseur est une sorte de type référence.


29) Que sont les attributs du curseur ?

Chaque curseur dans Oracle possède un ensemble d'attributs qui permettent à un programme d'application de tester l'état du curseur. Les attributs peuvent être utilisés pour vérifier si le curseur est ouvert ou fermé, trouvé ou introuvable et également pour trouver le nombre de lignes.


30) Que sont les opérateurs SET ?

Les opérateurs SET sont utilisés avec deux requêtes ou plus et ces opérateurs sont Union, Union All, Intersect et Minus.


31) Comment pouvons-nous supprimer les lignes en double dans un tableau ?

Les lignes en double dans la table peuvent être supprimées à l'aide de ROWID.


32) Quels sont les attributs du Curseur ?

Les attributs du curseur sont

  • %A TROUVÉ

Renvoie NULL si le curseur est ouvert et que la récupération n'a pas été exécutée

Renvoie TRUE si la récupération du curseur est exécutée avec succès.

Renvoie False si aucune ligne n'est renvoyée.

  • %PAS TROUVÉ

Renvoie NULL si le curseur est ouvert et que la récupération n'a pas été exécutée

Renvoie False si la récupération a été exécutée

Renvoie True si aucune ligne n'a été renvoyée

  • %EST OUVERT

Renvoie true si le curseur est ouvert

Renvoie faux si le curseur est fermé

  • % ROWCOUNT

Renvoie le nombre de lignes récupérées. Il doit être itéré sur tout le curseur pour donner un nombre réel exact.


33) Pouvons-nous stocker des images dans la base de données et si oui, comment cela peut-il être fait ?

Oui, nous pouvons stocker des images dans la base de données par type de données brutes longues. Ce type de données est utilisé pour stocker des données binaires d'une longueur de 2 gigaoctets. Mais la table ne peut contenir que des données de type Long Raw.


34) Qu'est-ce qu'une contrainte d'intégrité ?

Une contrainte d'intégrité est une déclaration définissant une règle métier pour une colonne de table. Les contraintes d'intégrité sont utilisées pour assurer l'exactitude et la cohérence des données dans une base de données. Il existe des types - intégrité de domaine, intégrité référentielle et intégrité de domaine.


35) Qu'est-ce qu'une ALERTE ?

Une alerte est une fenêtre qui apparaît au centre de l'écran et recouvre une partie de l'affichage en cours.


36) Qu'est-ce qu'un cluster de hachage ?

Hash Cluster est une technique utilisée pour stocker la table pour une récupération plus rapide. Appliquez la valeur de hachage sur la table pour récupérer les lignes de la table.


37) Quelles sont les différentes contraintes utilisées dans Oracle ?

Voici les contraintes utilisées :

  • NULL - C'est pour indiquer qu'une colonne particulière peut contenir des valeurs NULL
  • NOT NULL - C'est pour indiquer qu'une colonne particulière ne peut pas contenir de valeurs NULL
  • CHECK - Valider que les valeurs de la colonne donnée répondent aux critères spécifiques
  • DEFAULT - C'est pour indiquer que la valeur est assignée à la valeur par défaut

38) Quelle est la différence entre SUBSTR et INSTR ?

SUBSTR renvoie une partie spécifique d'une chaîne et INSTR fournit la position de caractère dans laquelle un modèle se trouve dans une chaîne.

SUBSTR renvoie une chaîne alors que INSTR renvoie une valeur numérique.


39) Quel est le paramètre mode qui peut être passé à une procédure ?

IN, OUT et INOUT sont les modes de paramètres qui peuvent être passés à une procédure.


40) Quels sont les différents objets Oracle Database ?

Il existe différents objets de données dans Oracle -

  • Tableaux - ensemble d'éléments organisés en vertical et horizontal
  • Vues – Table virtuelle dérivée d'une ou plusieurs tables
  • Index - Méthode de réglage des performances pour le traitement des enregistrements
  • Synonymes - Nom d'alias pour les tables
  • Séquences – Plusieurs utilisateurs génèrent des numéros uniques
  • Tablespaces - Unité de stockage logique dans Oracle

41) Quelles sont les différences entre la liste de valeurs et l'élément de liste ?

LOV est une propriété alors que les éléments de liste sont considérés comme un seul élément. La liste d'éléments est définie comme une collection de listes d'éléments. Un élément de liste ne peut avoir qu'une seule colonne, LOV peut avoir une ou plusieurs colonnes.


42) Que sont les privilèges et les subventions ?

Les privilèges sont les droits d'exécuter des instructions SQL - signifie Droit de se connecter et de se connecter. Des subventions sont accordées à l'objet afin que les objets soient accessibles en conséquence. Les subventions peuvent être accordées par le propriétaire ou le créateur d'un objet.


43) Quelle est la différence entre $ORACLE_BASE et $ORACLE_HOME ?

Oracle base est le répertoire principal ou racine d'un oracle, tandis qu'ORACLE_HOME est situé sous le dossier de base dans lequel résident tous les produits oracle.


44) Quelle est la méthode de requête la plus rapide pour récupérer les données de la table ?

La ligne peut être extraite de la table à l'aide de ROWID. L'utilisation de ROW ID est la méthode de requête la plus rapide pour extraire les données de la table.


45) Quel est le nombre maximum de déclencheurs pouvant être appliqués à une seule table ?

12 est le nombre maximum de déclencheurs pouvant être appliqués à une seule table.


46) Comment afficher les numéros de lignes avec les enregistrements ?

Afficher les numéros de lignes avec les numéros d'enregistrements –

Select rownum, <fieldnames> from table;

Cette requête affichera les numéros de ligne et les valeurs de champ de la table donnée.


47) Comment pouvons-nous afficher le dernier enregistrement ajouté à une table ?

Le dernier enregistrement peut être ajouté à une table et cela peut être fait par -

Select * from (select * from employees order by rownum desc) where rownum<2;

48) Quel est le type de données de la table DUAL ?

Le DOUBLE table est une table à une colonne présente dans la base de données oracle. La table a une seule colonne VARCHAR2(1) appelée DUMMY qui a une valeur de 'X'.


49) Quelle est la différence entre la jointure cartésienne et la jointure croisée ?

Il n'y a pas de différences entre les jointures. Les jointures cartésiennes et croisées sont identiques. La jointure croisée donne le produit cartésien de deux tables - Les lignes de la première table sont multipliées par une autre table appelée produit cartésien.

La jointure croisée sans clause where donne un produit cartésien.


50) Comment afficher les fiches des employés qui perçoivent un salaire supérieur au salaire moyen du service ?

Cela peut être fait par cette requête -

Select * from employee where salary>(select avg(salary) from dept, employee where dept.deptno = employee.deptno);

 


Ces questions d'entretien vous aideront également dans votre soutenance

Partager

21 Commentaires

  1. Avatar Rameshkumar dit:

    – Il y a 3 gros fichiers, 1 Go (file_a.txt), 10 Go (file_b.txt) et 1 To (file_c.txt) ;
    – Le format de ces 3 fichiers : chaque ligne avec une chaîne aléatoire dans le fichier ;
    - Il n'y a que 100 Mo de mémoire pouvant être utilisés, l'utilisation du disque n'est pas limitée ;
    - Hypothèse:
    SI ET SEULEMENT SI la chaîne A apparaît dans les 3 fichiers, nous devons compter le nombre total d'apparitions de ce A. Par exemple, A apparaît 2 fois dans file_a.txt, apparaît 10 fois dans file_b.txt, apparaît 100 fois dans file_c. txt, alors nous comptons le nombre total d'apparitions de A comme 2 + 10 + 100 = 112 fois.

    Question : veuillez écrire un programme pour générer les chaînes avec les 10 TOP et les 10 DERNIÈRES heures d'apparition dans l'ordre décroissant. quelqu'un peut répondre svp.

    1. mauvaise question .ne peut pas comprendre.

      1. SECTION UN – SCÉNARIO
        Nom du schéma : suivi des problèmes
        Description du problème:
        Vous devez concevoir et mettre en œuvre une base de données pour le logiciel de suivi des problèmes. Le suivi des problèmes logiciels fait partie intégrante de tout cycle de vie de développement de logiciels d'entreprise. Le
        la boîte à outils de suivi des problèmes est chargée de créer, de stocker, de suivre et de gérer les problèmes (par exemple, les logiciels
        bugs ou demandes de nouvelles fonctionnalités). Chaque problème est représenté par un ticket qui doit saisir le
        information suivante
        • le problème réel
        • les composantes ou projets concernés par le problème
        • développeur/clients qui ont identifié le problème en premier
        • les développeurs/gestionnaires chargés de résoudre le problème
        • l'état du problème
        • autres problèmes connexes (billets)

        Exigences détaillées :
        Nous décrivons ici les exigences minimales pour une boîte à outils de gestion du changement d'entreprise. Tu es
        encouragé à modifier, ajouter et (si clairement justifiable) supprimer les exigences que vous jugez être
        nécessaire. Ticket – attributs possibles : propriétaire, titre, description, état (par exemple, ouvert, en cours d'évaluation, en cours,
        test, différé, rejeté, clôturé, etc.), priorité (par exemple, faible, moyenne, élevée, urgente), planifiée
        date de réalisation, un ou plusieurs projets liés, un ou plusieurs tickets liés, catégorie (tâche,
        fonctionnalité, question, défaut, jalon), statut du jalon, émetteur, date de soumission, escalade
        personne, entrée de blog (un forum de discussion de tickets), ressources associées et artefacts associés (par exemple, diagrammes et documents pour aider à résoudre les problèmes), journal de travail (nombre d'heures travaillées sur
        chaque jour qui peut être différent pour chaque jour et pour chaque utilisateur)

        3

        Projet – Attributs possibles : titre, description, date de fin prévue, date de fin réelle, chef de projet, créateur, date de création, journal de travail (nombre d'heures travaillées chaque jour qui
        peut être différent pour chaque jour et pour chaque utilisateur)
        Utilisateur – Attributs possibles : nom, titre (par exemple, développeur, gestionnaire, administrateur système), sécurité (nom d'utilisateur
        et mot de passe)
        Artefact – Attributs possibles : titre, description, catégorie, version, taille, données
        Commentaire - attributs possibles : ticket, émetteur, date d'envoi, texte -Votre rôle en tant qu'étudiant
        Le but de cet exercice est de fournir une expérience pratique, en tant que concepteur de base de données et
        administrateur. Préparez un script et documentez-le. Vous pouvez en fait utiliser des outils comme SQL Developer
        afin de mettre en œuvre la conception de la base de données. Utilisez des exemples le cas échéant.

        4

        SECTION DEUX – QUESTIONS

        Toutes les questions sont obligatoires. Répondez à toutes les questions en série. Assurez-vous d'indiquer chaque
        question et suivre avec des réponses. Utilisez la syntaxe et des exemples chaque fois que nécessaire. Vous devez dériver vos réponses en fonction du scénario. Les chiffres à la fin des questions
        indiquer tous les points. Des questions:
        1. Créez un schéma utilisateur (IssueTracking) et accordez l'autorisation à tous les objets. [5]
        2. Créez une table de base de données possible dans Oracle qui devrait représenter les scénarios donnés. [dix]
        3. Définir et expliquer la relation entre les tableaux [10]
        4. Définissez les structures de table appropriées (par exemple, la colonne de date peut être un champ de date, les données de montant classées
        doit être un champ de données numériques) [10]
        5. Expliquez la sécurité des objets DB et la sécurité du système. Créer DBReader et DBWriter
        utilisateurs, l'utilisateur DBWriter doit avoir accès à l'exécution des commandes DDL et DML, l'utilisateur DBReader ne peut accéder qu'à l'autorisation de lecture sur toutes les tables [4+4+2+6+4]
        6. Qu'est-ce que le mécanisme de verrouillage ? Pourquoi est-ce nécessaire ? Démontrer le verrou partagé et
        Situation de verrouillage exclusif dans n'importe quelle table [2+4+6+6]
        7. Qu'est-ce que le blocage et comment gérez-vous le blocage dans le système de base de données ? Créer un
        situation de blocage dans la table 'Ticket'. [5+10]
        8. Les pertes commerciales d'ABC Inc. les données de la semaine dernière en raison d'une défaillance du système, le propriétaire de l'entreprise
        ne veut rien perdre pour les affaires. Normalement, DBA effectue une sauvegarde quotidienne sur
        Fin de la journée. Vous êtes le DBA d'ABC Inc. ; Comment gérez-vous les données de cette semaine et
        quelle serait la meilleure façon d'avancer? [dix]

        Peux tu m'aider ?

  2. Cela ne devrait pas être trop difficile.
    Je ferais une boucle dans le plus petit fichier, car si une chaîne ne s'y trouve pas, nous nous moquons de savoir si elle existe dans les autres fichiers.
    Pour ma structure de données, je garderais une liste qui aurait une ligne pour chaque ligne dans le plus petit fichier, et j'écrirais dans cette ligne mon décompte. Si une ligne est présente plusieurs fois dans le fichier, vous pouvez compter les occurrences suivantes comme des zéros ou les marquer comme X, afin de ne pas les compter deux fois.
    Ensuite, je lis ce fichier pour charger un tableau avec les 10 premières occurrences, je mettrais le premier index dans ce tableau et le nombre.
    Ensuite, j'utiliserais l'index pour accéder au fichier, lire la ligne réelle et l'afficher, ainsi que le nombre.
    Ensuite, faites un processus similaire pour les 10 derniers, cela devrait être encore plus facile.

    1. Avatar sonny sanphil sagameshwar dit:

      pouvez-vous écrire le script au lieu de l'anglais verbal

  3. Avatar Kusha Kumara dit:

    Merci beaucoup de donner l'occasion de récapituler les connaissances sur Oracle DB

  4. Avatar Gourishankar Behera dit:

    Il y a une erreur sur la réponse de 50.
    Donné est-ce
    Sélectionnez * de l'employé où salaire> (sélectionnez la moyenne (salaire) du service, employé où dept.deptno = employee.deptno ;
    L'erreur est que la dernière tranche n'est pas donnée.

    1. Salut, merci d'avoir écrit. Il est revu et mis à jour.

  5. il s'agit d'une formation pédagogique complète sur le pack de connaissances

  6. Select n'est pas une commande DML mais plutôt une commande DRL. Veuillez vous référer à Q10 ci-dessus.

  7. Bonjour,

    Question n° 47. pour obtenir le dernier enregistrement du tableau
    Sélectionnez * à partir de (sélectionnez * à partir de la commande des employés par employee_id desc) où rownum<=1 ;

    au lieu de la requête ci-dessus, pouvons-nous utiliser celle ci-dessous.

    select * parmi les employés où rownum<=1 trier par employee_id desc ;

    Merci,
    Anker

    1. nous ne pouvons pas utiliser , la clause order by est traitée par le moteur sql après le traitement du jeu de résultats, de sorte que votre requête prend le premier enregistrement dans la table

  8. 45. Quel est le nombre maximal de déclencheurs pouvant être appliqués à une seule table ?
    bonne réponse:

    Nous pouvons avoir un nombre N de déclencheurs sur une table mais le type maximum de déclencheurs sur une seule table peut être 3*2*2=12 c'est-à-dire que la division se fait comme
    Insérer/Mettre à jour/Supprimer= 3
    Avant/Après= 2
    Niveau ligne/Niveau instruction=2

  9. Si la requête sélectionnée renvoie 6 lakhs d'enregistrement sur 10 lakhs d'enregistrement d'une table, l'optimiseur utilise l'analyse INDEX ou l'analyse complète de la table. quand l'index échouera et quel est le pourcentage maximal d'INDEX pour extraire l'enregistrement de la table ?

    Merci

  10. Avatar MD DIDARUL ISLAM dit:

    Merci pour l'aide des questions d'entrevue.

Soyez sympa! Laissez un commentaire

Votre adresse email n'apparaitra pas. Les champs obligatoires sont marqués *