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
Livre blanc Sécurité et Stockage des documents
Découvrez dans ce livre blanc Kyocera les outils logiciels qui permettent une approche holistique et efficace de la collecte, du stockage, de la gestion et de la sécurisation des documents en entreprise.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Facturation électronique : les craintes des entreprises liées à la réforme
- Cyber-assurances, priorité ou faux remède pour les TPE et PME ?
- Success Stories : 3 histoires et 3 Intelligences Artificielles
- NIS2: cauchemar des décideurs européens pour la conformité
- Fossé entre exigences professionnelles et compétences