Différence entre la vue et la procédure stockée

Table des matières:

Différence entre la vue et la procédure stockée
Différence entre la vue et la procédure stockée

Vidéo: Différence entre la vue et la procédure stockée

Vidéo: Différence entre la vue et la procédure stockée
Vidéo: What is Synonym in Oracle, when to use a synonym || Oracle Database Tutorial 2024, Novembre
Anonim

Vue vs procédure stockée

Les vues et les procédures stockées sont deux types d'objets de base de données. Les vues sont des sortes de requêtes stockées, qui rassemblent des données à partir d'une ou plusieurs tables. Voici la syntaxe pour créer une vue

créer ou remplacer la vue viewname

as

select_statement;

Une procédure stockée est un jeu de commandes SQL pré-compilé, qui est stocké dans le serveur de base de données. Chaque procédure stockée a un nom d'appel, qui est utilisé pour les appeler à l'intérieur d'autres packages, procédures et fonctions. C'est la syntaxe (dans ORACLE) pour créer une procédure stockée, créer ou remplacer la procédure nom de la procédure (paramètres)

est

commencement

instructions;

exception

exception_handling

fin;

Voir

Une vue agit comme une table virtuelle. Il cache une instruction select dans son corps. Cette instruction select peut être très complexe, car elle prend des données de plusieurs tables et vues. Par conséquent, en d'autres termes, une vue est une instruction select nommée, qui est stockée dans la base de données. Une vue peut être utilisée pour masquer la logique derrière les relations de table aux utilisateurs finaux. Comme une vue est le résultat d'une requête stockée, elle ne conserve aucune donnée. Il rassemble les données des tables de base et les affiche. Les vues jouent également un rôle important dans la sécurité des données. Lorsque le propriétaire de la table n'a besoin de montrer qu'un ensemble de données aux utilisateurs finaux, la création d'une vue est une bonne solution. Les vues peuvent être divisées en deux catégories

  • Vues modifiables (Vues pouvant être utilisées pour INSERT, UPDATE et DELETE)
  • Vues non modifiables (Vues qui ne peuvent pas être utilisées pour INSERT, UPDATE et DELETE)

Les vues pouvant être mises à jour ne peuvent pas inclure les éléments suivants, Définir les opérateurs (INTERSECT, MINUS, UNION, UNION ALL)

DISTINCT

Fonctions d'agrégation de groupe (AVG, COUNT, MAX, MIN, SUM, etc.)

GROUPER PAR Clause

ORDER BY Clause

Clause CONNECT BY

COMMENCER PAR Clause

Expression de collection dans une liste de sélection

Sous-requête dans une liste de sélection

Rejoindre la requête

Procédure stockée

Les procédures stockées sont nommées blocs de programmation. Ils doivent avoir un nom à appeler. Les procédures stockées acceptent les paramètres en tant qu'entrées utilisateur et traitent selon la logique derrière la procédure et donnent le résultat (ou exécutent une action spécifique). Les déclarations de variables, les affectations de variables, les instructions de contrôle, les boucles, les requêtes SQL et d'autres appels de fonctions/procédures/packages peuvent se trouver à l'intérieur du corps des procédures.

Quelle est la différence entre la vue et la procédure stockée ?

Voyons les différences entre ces deux.

• Les vues agissent comme des tables virtuelles. Elles peuvent être utilisées directement dans les requêtes from close of SQL (select), mais les procédures ne peuvent pas être utilisées dans from close of queries.

• Les vues n'ont qu'une instruction select comme corps, mais les procédures peuvent avoir des déclarations de variables, des affectations de variables, des instructions de contrôle, des boucles, des requêtes SQL et d'autres fonctions/procédures/appels de packages comme corps.

• La procédure accepte les paramètres à exécuter, mais les vues ne veulent pas que les paramètres s'exécutent.

• Les types d'enregistrement peuvent être créés à partir de vues à l'aide de % ROWTYPE, mais à l'aide de procédures, les types d'enregistrement ne peuvent pas être créés.

• Les conseils SQL peuvent être utilisés dans l'instruction de sélection de vue, pour optimiser le plan d'exécution, mais les conseils SQL ne peuvent pas être utilisés dans les procédures stockées.

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK et DEBUG peuvent être accordés sur les vues, mais seuls EXECUTE et DEBUG peuvent être accordés sur les procédures.

Conseillé: