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

Rapport Forrester sur les services de réponse aux incidents de cybersécurité
Dans ce rapport, basé sur 25 critères, Forrester Consulting passe au crible les 14 principaux fournisseurs de services de réponse aux incidents de cybersécurité du marché. Cette analyse complète permet aux professionnels de la sécurité et de la gestion des risques d’évaluer et de sélectionner les solutions les plus adaptées à leurs besoins.
Les articles les plus consultés
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Les 6 étapes vers un diagnostic réussi
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Activer la mise en veille prolongée dans Windows 10
Les plus consultés sur iTPro.fr
- Évolution du marché de la virtualisation : quelle voie choisir ?
- La performance de l’IA et l’analytique reposent sur des fondations de données solides
- AI Appreciation Day,16 juillet « cet email de 10 pages aurait pu se résumer en 3 points »
- L’informatique quantique perçue comme la menace de cybersécurité la plus critique
- Bâtir une entreprise AI-native : par où commencer
