Créer une vue SQL Server avec un script

Comment créer une vue SQL Server avec un script T-SQL ? Une vue SQL permet d’afficher des colonnes spécifiques d’une table existante. Considérer une vue comme une table virtuelle définie par une requête SQL de sélection. C’est un ensemble de colonnes et de lignes d’une table. Les développeurs SQL Server créent et gèrent des objets définis par l’utilisateur et donc des vues.

Voici un exemple de script pour créer une vue avec Microsoft SQL. Utiliser l’instruction SQL Create View suivie d’une instruction Select pour ajouter une vue à une base de données.

Par ailleurs, voici les trois différents types de vues SQL Server :

  • Une vue partitionnée permet de joindre des données avec une partition provenant de plusieurs tables sur un ou plusieurs serveurs SQL. Les vues classiques sont des vues partitionnées car c’est la requête sous-jacente qui permet de joindre les données.
  • La vue indexée est une vue matérialisée qui doit être rafraîchie comme une table.
  • Une vue système permet aux utilisateurs SQL de vérifier les métadonnées du catalogue de la base de données MS SQL.

Sur un autre sujet, peut être utile de lister tous les index d’une base de données SQL Server à des fins de vérification et d’optimisation.

Script T-SQL pour créer une vue SQL Server (CREATE VIEW)

Tout d’abord, considérons la table Sales créée dans un article précédent pour montrer les différents types de données disponibles et une structure de vente simple à utiliser dans les exemples T-SQL.

CREATE TABLE [dbo].[SALES] 
(
   [Year] INT, 
   [MonthName] NVARCHAR(50), -- alphanumeric
   [MonthCurrent] BIT, -- Boolean, 0 or 1 , false / true
   [NumberMonth] TINYINT, -- very small integer, from 0 to 255
   [EmployeeNumber] SMALLINT, -- small integer, minimum -2^15, maximum 2^15
   [NumberOfClients] INTEGER, -- integer, minimum -2^31, maximum 2^31
   [NumberOfSales] BIGINT, -- big integer, minimum: -2^63, maximum 2^63
   [Amount_ET] NUMERIC(15,5), -- numeric, 15 digits, with 5 after the comma 
   [Amount_IT] DECIMAL(15,5) -- decimal, 15 digits, with 5 after the comma
);

Deuxièmement, avec ce code, créer une vue pour afficher une partie du contenu de la table. Utiliser le script ci-dessous et ajuster-le aux besoins du projet.

CREATE VIEW [dbo].[SalesByMonth] 
AS 
SELECT 
	[MonthName], 
	[NumberMonth], 
	SUM([NumberOfClients]) 	AS [NumberOfClients], 
	SUM([Amount_ET])       	AS [Amount_ET], 
	SUM([Amount_IT])       	AS [Amount_IT] 
FROM 	[dbo].[Sales] 
GROUP BY 
	[MonthName], 
	[NumberMonth] 
ORDER BY	[NumberMonth] ASC;
GO

Script pour appeler une vue T-SQL depuis SSMS

Ensuite, il suffit d’utiliser une commande Select comme celle-ci, par exemple pour sélectionner la deuxième partie de l’année. C’est à dire les mois avec un numéro supérieur à 6, soit du mois de juillet au mois de décembre.

SELECT 	*
FROM 	[dbo].[SalesByMonth]
WHERE 	[NumberMonth] > 6 ;

En effet, ce court tutoriel sur les vues SQL Server explique comment créer une vue avec un script.

Pour conclure et en savoir plus sur les vues MS SQL, consulter la définition des vues SQL sur la page dédiée de Wikipédia. Il s’agit cette fois de la vue SQL Standard, applicable à tout fournisseur respectant la norme ISO.

Enfin, ci-dessous un article avec un exemple de script T-SQL pour créer une fonction.

Soyez le premier à commenter

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.


*