Introduction aux vues SQL

Pour les requêtes SQL complexes, les vues sont créées à l'aide d'une ou plusieurs tables. En outre, la vue est utilisée pour fournir l'encapsulation de la table / des tables à des fins de sécurité. Une vue est considérée comme une table virtuelle avec des lignes et des colonnes comme une table de base de données normale.

Syntaxe pour créer une vue

Une vue peut être créée à l'aide de l'instruction CREATE VIEW comme ci-dessous:

CREATE VIEW VIEW_NAME AS
SELECT column1, column2, column3…….
FROM table_name WHERE (condition);

Création d'une vue en SQL avec des exemples:

Considérons le tableau ci-dessous EMPLOYÉ:

Nous pouvons créer une vue à partir du tableau ci-dessus comme ci-dessous.

CREATE VIEW EMLOYEE_VW AS
SELECT NAME, AGE, SALARY
FROM EMPLOYEE;

Dans la vue ci-dessus EMPLOYEE_VW, les colonnes ci-dessous seront créées.

SELECT * FROM EMPLOYEE_VW;

Nous pouvons créer des vues à partir de plusieurs tables.

Considérons un autre tableau DEPARTEMENT comme ci-dessous.

Nous pouvons créer une vue à partir des tableaux EMPLOYÉ et DÉPARTEMENT ci-dessus comme ci-dessous:

CREATE VIEW DEPT_VIEW AS
SELECT EMPLOYEE.ID, EMPLOYEE.NAME, DEPARTMENT.DEPTNAME
FROM EMPLOYEE, DEPARTMENT
WHERE EMPLOYEE.ID = DEPARTMENT.ID;

La vue DEPT_VIEW donnera le résultat ci-dessous.

SELECT * FROM DEPT_VIEW;

Différentes opérations d'affichage dans les vues SQL

Voici différentes opérations d'affichage en SQL:

Mettre à jour dans la vue

Bien qu'une vue puisse être mise à jour, nous devons conserver quelques conditions dans l'avis. Par exemple, lors de la mise à jour d'une vue, l'instruction select ne doit pas contenir de mot-clé DISTINCT, définir des fonctions, une clause order by, Group By ou having, des sous-requêtes, etc. De plus, la clause FROM ne doit pas contenir plusieurs tables. En plus de ce qui précède, la vue doit avoir des valeurs NOT NULL si elle doit être mise à jour. Ainsi, lorsque nous voulons mettre à jour la vue EMPLOYEE_VW en gardant les points ci-dessus au point, la table EMPLOYEE sera mise à jour.

L'instruction CREATE OR REPLACE VIEW est utilisée pour ajouter ou supprimer des champs d'une vue.

SYNTAX pour la mise à jour

CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2….
FROM table_name
WHERE (condition);

Modifions la vue DEPT_VIEW comme ci-dessous pour ajouter la colonne de localisation.

CREATE OR REPLACE VIEW DEPT_VIEW AS
SELECT EMPLOYEE.ID, EMPLOYEE.NAME, DEPARTMENT.DEPTNAME, DEPARTMENT.LOCATION
FROM EMPLOYEE, DEPARTMENT
WHERE EMPLOYEE.ID = DEPARTMENT.ID;

SELECT * FROM EMPLOYEE;

De la requête ci-dessus, nous obtiendrons le résultat ci-dessous.

INSÉRER dans VIEW

Syntaxe à insérer dans une vue

INSERT INTO view_name(column1, column 2, column3, ….) VALUES(value1, value2, value3, …);

Une ligne peut être insérée pour afficher EMPLOYEE_VW en utilisant l'insertion dans une instruction comme ci-dessous:

INSERT INTO EMPLOYEE_VW (NAME, AGE, SALARY) VALUES('RAM', '24', '27000.00');

Après l'insertion, nous pouvons voir le résultat par la requête de sélection ci-dessous.

SELECT * FROM EMPLOYEE_VW;

SUPPRIMER D'UNE VUE

La suppression d'une ligne d'une vue supprime la ligne de la table sur laquelle la vue a été créée.

La syntaxe de suppression d'une vue

DELETE FROM view_name WHERE (condition);

Nous pouvons supprimer la ligne de la vue comme ci-dessous:

DELETE FROM EMPLOYEE_VW WHERE NAME = 'MALAY';

Après la suppression, le résultat peut être affiché par la requête ci-dessous.

SELECT * FROM EMPLOYEE_VW;

DÉPOSER UNE VUE

Les vues peuvent être supprimées en utilisant la syntaxe ci-dessous:

DROP VIEW view_name;

Si nous voulons supprimer la vue EMPLOYEE_VW, elle peut être supprimée comme ci-dessous:

DROP VIEW EMPLOYEE_VW;

Avantages et inconvénients des vues SQL

Voici quelques avantages et inconvénients des vues SQL comme suit:

Les avantages

Voici les avantages de l'utilisation des vues dans SQL:

  • Si nous devons conserver des informations sensibles en fournissant un accès limité aux utilisateurs, des vues sont utilisées à cette fin. Les vues sont utilisées pour afficher uniquement les données requises aux utilisateurs en protégeant les données sensibles.
  • Comme une vue de base de données est associée à de nombreuses tables sur lesquelles la vue est créée, elle simplifie la complexité de la requête.
  • La vue est utilisée pour cacher aux utilisateurs finaux la complexité des tables sous-jacentes utilisées dans une base de données.
  • Les vues sont utiles en cas de re-conception de la base de données afin de ne pas affecter les autres applications utilisant la même base de données.
  • Les données des colonnes calculées peuvent être calculées très facilement lorsque nous interrogeons les données de la vue, car les vues permettent les colonnes calculées.

Désavantages

Malgré les nombreux avantages qu'offre la vue, elle présente toujours certains inconvénients, comme indiqué ci-dessous:

  • L'un des principaux inconvénients de l'utilisation de la vue apparaît dans l'image lorsque nous modifions fréquemment les structures de table sur lesquelles la vue est créée. Ainsi, lorsque les structures de table sont modifiées, la vue doit également être modifiée.
  • En outre, l'utilisation de la vue ralentit les performances des requêtes.

Conclusion

Les vues sont largement utilisées pour leurs nombreux avantages. Ils ajoutent une couche de sécurité supplémentaire à la base de données, ce qui est très essentiel pour tout système de gestion de base de données relationnelle. Les vues sont flexibles en cas d'exposition des données aux utilisateurs finaux en affichant uniquement les données nécessaires, par exemple en utilisant des vues en lecture seule pour limiter les privilèges aux utilisateurs. Mais les vues peuvent également être désavantageuses si les structures de table sous-jacentes changent beaucoup fréquemment, augmentant ainsi la complexité du changement des vues en fonction des structures de table. Ainsi, avec de nombreux avantages dans l'image, les vues sont un peu moins recommandées lorsque les performances de la requête de données sont vitales pour l'entreprise. Il dépend de nous de choisir l'utilisation de la vue dans notre base de données en validant correctement l'exigence métier afin de tirer plus d'avantages des vues afin d'augmenter les performances du système.

Articles recommandés

Cela a été un guide pour les vues SQL. Ici, nous avons discuté de la création d'une vue en SQL et de la syntaxe pour créer une vue ainsi que des avantages et des inconvénients des vues en SQL. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus -

  1. Questions d'entretiens chez Oracle PL / SQL
  2. Qu'est-ce que le schéma MySQL?
  3. Qu'est-ce que l'injection SQL?
  4. Qu'est-ce que T-SQL?
  5. Apprenez l'instruction INSERT dans Oracle
  6. Différentes options d'affichage dans MySQL