TUTORIEL OUTILS 
Introduction à SQL Server
Les fonctions classiques de T-SQL, les mécanismes de création de procédures et l'essentiel à savoir sur le SGBD Microsoft. (14/01/2005)

A l'instar d'Oracle avec son PL/SQL, le SGBD de Microsoft utilise une version améliorée et propriétaire du langage SQL, développée à l'époque où SQL Server était un produit commun au géant de Redmond et à Sybase. Mais celle-ci reste une brique essentielle de son fonctionnement. Les développeurs devant travailler avec ce SGBD ont donc besoin de le connaître pour en exploiter toutes les possiblités.

Transact-SQL (ou T-SQL) représente moins un nouveau langage qu'une suite d'ajouts au SQL classique, pour prendre en compte les spécificités de la plate-forme de Microsoft. De fait, toutes les commandes SQL standards sont reconnues, et T-SQL en ajoute de nouvelles liées aux possibilités de SQL Server. Les développeurs habitués à SQL ne seront donc pas perdus.

T-SQL offre notamment à l'utilisateur la possibilité de faire appel à plusieurs fonctions pour gérer certains types de données spécifiques. Ces fonctions peuvent être regroupées en trois catégories, en fonction des données pour lesquelles elles sont conçues : les chaînes, les dates, les expressions mathématiques, les fonctions de conversion, les fonctions d'agrégation, et enfin les fonctions plus générales ou qui ne rentrent pas dans les catégories précédentes.

Ces fonctions sont assez classiques, on les retrouve (parfois sous un nom différent) dans la plupart des langages évolués. Voici les noms de quelques-unes, qui devraient être assez parlants.
Fonctions de chaînes : substring(), upper(), lower(), charindex(), ltrim(), rtrim(), replicate(), soundex()…
Fonctions de conversion : char(), str(), ascii(), convert()…
Fonctions de date : getdate(), datename(), datediff()…
Fonctions mathématiques : floor(), round(), abs(), pi(), rand(), exp(), sin(), cos(), tan(), log(), exp()…
Fonctions d'agrégation : count(), sum(), avg(), max(), min(),...
Fonctions générales : isnull(), isnumeric(), isdate() …

T-SQL s'écrit principalement dans le cadre de procédures stockées, c'est-à-dire en tant que jeu de commandes sauvegardées sur le serveur et mises à disposition de tout programme qui y accède. Les procédures stockées permettant de soulager le serveur de certaines tâches trop intensives, ainsi que d'éviter de jongler entre fonctions scriptées (ASP…) et requêtes SQL, tout élargissant les possibilités offertes
.
Par ailleurs, cela permet de dynamiser SQL grâce à la combinaison de plusieurs fonctions au sein de procédures stockées.

Les procédures sont créées de la manière suivante :
CREATE PROCEDURE ma_procedure
AS
  série de requêtes et fonctions SQL
RETURN

par exemple :

CREATE PROCEDURE spBonsClient
  AS
  SELECT nom, nbrAchats FROM clients
  WHERE nbrAchats >= '5000'
  ORDER BY nbrAchats
RETURN

On appelle ensuite la procédure :

EXECUTE spBonsClients

  Forum

Réagissez dans les forums de JDN Développeurs

SQL Server dispose d'origine d'un jeu conséquent de procédures stockées : elles commencent par sp_ (pour Stored Procedure) ou xp_ (pour Extended Stored Procedures). La liste complète est disponible sur le site MSDN.

Reste à étudier plus avant T-SQL : à suivre...

 
Rédaction JDN Développeurs
 
Accueil | Haut de page
 
 





Quand achetez-vous le plus en ligne ?
Du lundi au vendredi
Le samedi
Le dimanche

Tous les sondages