> Tech > Fonctions scalaires de SQL pour un code plus léger et plus serré

Fonctions scalaires de SQL pour un code plus léger et plus serré

Tech - Par iTPro.fr - Publié le 24 juin 2010
email

par Gary Guthrie
Pour de nombreux programmeurs et développeurs, SQL n'est pas le favori pour les définitions de bases de données et les entrées/sorties (I/O) d'applications. En la matière, DDS et l'I/O natif prévalent. SQL a pourtant sa place dans de tels environnements ...Outre ces possibilités d'I/O, SQL offre des fonctions intégrées qui simplifient certaines tâches applicatives. Ceux qui n'utilisent que l'I/O natif ne sont peut-être pas familiarisés avec ces fonctions et ignorent à  quel point il est facile de les inclure dans des applications. Dans cet article, je présente un ensemble de fonctions intégrées SQL - les fonctions scalaires - et montre comment elles peuvent améliorer les applications, que l'on utilise SQL ou des techniques d'I/O natives.

Fonctions scalaires de SQL pour un code plus léger et plus serré

  On peut voir une fonction scalaire comme l’équivalent SQL d’une procédure RPG qui renvoie une valeur. Opérant sur un seul argument dont elles tirent une valeur de renvoi, les fonctions se présentent sous la forme :

FunctionName (Argument)

  Les fonctions scalaires incluent des fonctions mathématiques (valeurs absolues, génération de nombres aléatoires, opérations trigonométriques, par exemple), des fonctions de date et d’heure (jour de la semaine, jour du mois, semaine de l’année, heure du jour, par exemple) et des fonctions chaîne (concaténation, conversion de casse, opérations de sous-chaîne, par exemple). Ainsi, la fonction scalaire DayOfWeek renvoie un nombre représentant le jour de la semaine correspondant à  une date donnée (1 = Dimanche, 2 = Lundi, 7 = Samedi, par exemple). Soit, l’instruction SQL suivante :

Select * From SomeFile 
Where Day0fWeek(SomeDate) = 7

  Cette instruction renvoie toutes les lignes de SomeFile dans lesquelles le champ SomeDate est un samedi. La liste complète des fonctions scalaires se trouve dans le manuel IBM DB2 Universal Database for iSeries SQL Reference (voir Autres lectures). En plus d’utiliser les fonctions scalaires dans des instructions SQL standard, on peut aussi les imbriquer dans des programmes HLL comme opérations autonomes (pour RPG IV, il faut définir le type source comme SQLRPGLE). Bien qu’on puisse écrire du code dans un langage évolué (HLL) pour effectuer les mêmes tâches, les fonctions scalaires présentent des avantages appréciables : les programmes ainsi écrits sont plus compacts, plus compréhensibles et moins sujets à  erreur. On peut même améliorer les performances.

Téléchargez cette ressource

*** SMART DSI *** VERSION NUMÉRIQUE

*** SMART DSI *** VERSION NUMÉRIQUE

Découvrez SMART DSI, la nouvelle revue du Décideur IT en version numérique. Analyses et dossiers experts pour les acteurs de la transformation numérique de l'entreprise, Gagnez en compétences et expertise IT Professionnelle avec le contenu éditorial premium de SMART DSI.

Tech - Par iTPro.fr - Publié le 24 juin 2010