Différence Entre Vue Et Procédure Stockée

Table des matières:

Différence Entre Vue Et Procédure Stockée
Différence Entre Vue Et Procédure Stockée

Vidéo: Différence Entre Vue Et Procédure Stockée

Vidéo: Différence Entre Vue Et Procédure Stockée
Vidéo: MySQL : Découvrez la définition et la création d'une procédure stockée. (exemple simple et concret) 2024, Mai
Anonim

Afficher 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 collectent des données à partir d'une ou plusieurs tables. Voici la syntaxe pour créer une vue

créer ou remplacer la vue viewname

comme

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 appelant, qui est utilisé pour les appeler dans d'autres packages, procédures et fonctions. Voici la syntaxe (dans ORACLE) pour créer une procédure stockée, créer ou remplacer le nom de la procédure (paramètres)

est

commencer

déclarations;

exception

gestion des exceptions

fin;

Vue

Une vue agit comme une table virtuelle. Il cache une instruction select dans son corps. Cette instruction de sélection peut être très complexe, qui prend des données de plusieurs tables et vues. Par conséquent, en d'autres termes, une vue est une instruction de sélection 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. Puisqu'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 montre. Les vues jouent également un rôle important dans la sécurité des données. Lorsque le propriétaire de la table a besoin d'afficher uniquement 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 pouvant être mises à jour (vues pouvant être utilisées pour INSERT, UPDATE et DELETE)
  • Vues non actualisables (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.)

Clause GROUP BY

ORDER BY Clause

Clause CONNECT BY

Commencer par la 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 appelées blocs de programmation. Ils doivent avoir un nom à appeler. Les procédures stockées acceptent des paramètres comme entrée 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 les autres appels de fonctions / procédures / packages peuvent se trouver dans le 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. Ils peuvent être utilisés directement à partir de la fermeture des requêtes SQL (sélection), mais les procédures ne peuvent pas être utilisées à partir de la fermeture des requêtes.

• 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 appels de fonctions / procédures / 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.

Recommandé: