Une vue représente un virtuel table. Vous pouvez joindre plusieurs tables dans une vue et utiliser la vue pour présenter les données comme si elles provenaient d'une seule table.
Une procédure stockée utilise des paramètres pour exécuter une fonction... qu'il s'agisse de mettre à jour et d'insérer des données, ou de renvoyer des valeurs uniques ou des ensembles de données.
Création de vues et de procédures stockées - a des informations de Microsoft sur quand et pourquoi utiliser chacun.
Supposons que j'ai deux tables :
tbl_user
, avec les colonnes :user_id
,user_name
,user_pw
tbl_profile
, avec les colonnes :profile_id
,user_id
,profile_description
Donc, si je me retrouve à interroger BEAUCOUP sur ces tables... au lieu de faire la jointure dans CHAQUE morceau de SQL, je définirais une vue comme :
CREATE VIEW vw_user_profile
AS
SELECT A.user_id, B.profile_description
FROM tbl_user A LEFT JOIN tbl_profile B ON A.user_id = b.user_id
GO
Ainsi, si je veux interroger profile_description
par user_id
à l'avenir, tout ce que j'ai à faire est :
SELECT profile_description FROM vw_user_profile WHERE user_id = @ID
Ce code pourrait être utilisé dans une procédure stockée comme :
CREATE PROCEDURE dbo.getDesc
@ID int
AS
BEGIN
SELECT profile_description FROM vw_user_profile WHERE user_id = @ID
END
GO
Alors, plus tard, je peux appeler :
dbo.getDesc 25
et j'obtiendrai la description de user_id
25, où le 25
est votre paramètre.
Il y a évidemment beaucoup plus de détails, c'est juste l'idée de base.