UDTF SQL, première partie
par Michael Sansoterra - Mis en ligne le 23/02/2005 - Publié en Avril 2004
Les UDTF (User-Defined Table Functions) offrent trop d'avantages pour qu'on les ignore
Pour le plus grand bien de la communauté
iSeries, IBM améliore continuellement
les UDF (User-Defined
Functions) introduites dans SQL
V4R4 pour iSeries. Ces UDF permettent
aux programmeurs de construire
des fonctions scalaires personnalisées ...La V5R2 leur donne le
moyen de construire un autre genre
de fonctions appelé UDTF (User-
Defined Table Function). Contrairement
à une UDF scalaire, qui accepte
des paramètres de zéro ou
plus et renvoie une valeur unique,
l'UDTF peut accepter des paramètres
zéro ou plus et renvoyer une
table de résultats à part entière.
Comme une UDTF renvoie une table
de résultats, les programmeurs peuvent
l'utiliser comme une table normale
ou la visualiser dans une instruction
Select, dans la clause From
d'un subselect, ou dans une déclaration
de curseur. (Une UDTF ne peut
pas être référencée comme cible
d'une instruction Update, Insert ou
Delete.)
Vous pouvez utiliser soit SPL
(SQL procedural language), soit un
langage évolué, comme ILE RPG,
pour mettre en oeuvre une UDTF.
Les UDTF écrites en SPL sont appelées
« UDTF SQL » et celles qui sont
écrites dans un langage évolué (HLL)
sont appelées « UDTF externes ». En
général, les UDTF SQL sont utiles
pour extraire des données d'une
base de données DB2, tandis que
elles conviennent bien pour extraire
des données d'autres sources, même
si des UDTF externes peuvent aussi
extraire des données de DB2. Pour
l'instant, nous n'examinerons que
les UDTF SQL. Rappelons qu'à partir
de la V5R2, le kit de développement
SQL 5722ST1 n'est plus nécessaire
pour écrire du code SPL.
Comme avec les UDTF scalaires
SQL, l'instruction Create Function
mène une double action : elle compile
le code de l'UDTF et elle enregistre
le nom, les paramètres et la valeur
de renvoi de l'UDTF avec la base
de données. La figure 1 montre une
UDTF simple qui extrait toutes les
commandes d'un client des tables
Orders et OrdersArchive.
Pour invoquer une UDTF dans une instruction SELECT, spécifiez le
nom de la fonction et ses paramètres
de la manière suivante :
Select *
From Table(GetCustomerOrders
('ACME_HDW'))
As CustOrders
Order By OrderValue
Si l'interrogation concerne une
UDTF, vous devez placer le nom UDTF
entre parenthèses dans le mot-clé
Table. Vous devez aussi indiquer un
nom de corrélation en utilisant le motclé
As pour donner à l'UDTF un nom
unique dans l'instruction.La figure 1 montre comment, pour des UDTF SQL, vous pouvez diviser l'instruction Create Function en deux parties : la définition de la fonction et l'implémentation de la fonction. La définition de la fonction va des mots-clés Create Function jusqu'à la fin de la phrase Set Option. L'implémentation de la fonction est spécifiée entre les mots-clés Begin et End.
Pour démarrer la partie définition, l'UDTF reçoit le nom GetCustomer- Orders, qui est référencé dans la clause From d'une instruction Select. Après le nom, spécifier les éventuels paramètres d'entrée dont l'UDTF a besoin pour extraire les données désirées. Dans cet exemple, le CustomerID est déclaré comme un paramètre d'entrée appelé parmCustomerID.
Le mot-clé Returns Table distingue une UDTF d'une UDF scalaire parce qu'une UDTF peut renvoyer des colonnes multiples ainsi que des lignes. Vous devez spécifier les colonnes de la table de résultats en utilisant une syntaxe identique à celle qui permet de définir des colonnes sur l'instruction Create Table. Une instruction SQL qui référence l'UDTF utilise les noms des colonnes de la table de résultats de la même manière que les noms de colonnes provenant d'une table ou d'une vue normale.
Le fait de spécifier Language SQL signifie que l'UDTF est écrite en SPL. Comme les UDTF ne peuvent pas s'exécuter en parallèle, la clause Disallow Parallel est toujours requise. Utilisez la clause Set Option pour définir une variété de paramètres incluant le format date, le format heure, le niveau de contrôle de commitment et l'autorité adoptée. Pour obtenir plus d'informations sur les options disponibles, voir la commande Set Option dans le guide IBM DB2 UDB for iSeries SQL Reference à http://publib.boulder. ibm.com/iseries/v5r2/ic2924/info/db2/rbafzmst02.htm (ou la même URL se terminant par rbafsmst.pdf pour Lire l'article
Un guide rapide vers les JSP : rejoignez l’équipe des tages
par David Bridgewater - Mis en ligne le 09/02/2005 - Publié en Mars 2004
Une application familière avec deux nouveaux
trucs : le code modularisé et les tags JSP
Dans l'article « Les JSP : visite rapide » , je montrais comment écrire une application JSP (JavaServer
Page) simple mais intéressante. L'application permet à l'utilisateur de filtrer
un fichier Employee au travers d'une large sélection de critères ; puis,
elle affiche les résultats sous forme de table dans une page Web, en incluant
le comptage du nombre d'employés trouvé ...Dans ce premier article, je signalais les défauts de conception de ma
méthode. Principale critique : mon code était monolithique, mélangeant
la logique de présentation, de gestion et de base de données - le genre de
pratique que nous avons tous délaissée dès l'arrivée de ILE et des programmes
de service. Je propose ici un exemple d'application de même
fonctionnalité, mais avec deux réaménagements importants :
1. Le code est modularisé.
2. Le JSP ne contient pas de Java. En lieu et place, on trouve des constructions
JSP différentes appelées tags.
Je ne prétends pas que cette nouvelle méthode soit le nec plus ultra
de la bonne conception, mais c'est une amélioration indiscutable.
Les nouveautés de la semaine 22 – Windows IT Pro – 2005
Tous les nouveaux produits du 30 Mai au 5 Juin 2005
Lire l'article
[V4-V5]Les belles équipes ne sont pas le fruit du hasard
par Robert S. Tipton - Mis en ligne le 21/04/2005 - Publié en Juin 2004
Les leaders sont jugés par la réussite des équipes qu'ils dirigent
Pour un bon leader IT, rien n'est
plus important que sa capacité à bien
recruter, à constituer de belles équipes
et à les guider dans leurs missions. En
tant que leaders, vous serez plus souvent
jugés d'après la réussite de vos
équipes que sur votre propre ouvrage ...Pour avoir toutes les chances de
réussir, vous devez vous entourer de la
bonne combinaison de talents et de
personnalités. Si vous avez la chance de
constituer vous-même les équipes avec
lesquelles vous travaillez, c'est superbe
! Malheureusement, d'après mon
expérience, la plupart des leaders IT
héritent de la plus grande partie des
membres de leurs équipes, parfois de
la totalité. Il est donc peu probable que
vous ayez la chance de recruter les
vôtres en partant de zéro. J'ai eu cette
chance une fois mais, pour cela, j'ai dû
créer ma propre affaire ! Dans tous les
autres cas, j'ai rejoint un service ou une
organisation dont le personnel était
déjà en place.
De plus, vous vous trouverez parfois
à la tête d'équipes dont vous ne
maîtrisez pas la constitution. Si vous
êtes le CIO (chief information officer)
ou le vice-président d'IT, vous participerez
très probablement comme leader
d'un comité chargé d'établir la
priorité des projets IT et de les financer.
Souvent appelés comités de pilotage,
ces groupes sont composés de
cadres supérieurs venant de divers services,
et des principaux acteurs financiers.
Vous pouvez aussi jouer un rôle
de leadership dans diverses opérations
ou groupes ou comités chargés de définir
la politique. A ce titre, vous dirigerez
parfois des équipes que vous n'avez
pas constituées et sur lesquelles vous
avez peu ou pas de responsabilité de
management direct.
Cet article s'intéresse aux trois
principales activités liées aux équipes :
recruter, rassembler et diriger. Nous
examinerons mes trois règles éprouvées
sur le recrutement, quelques
points importants concernant la
constitution des équipes, puis divers
aspects touchant à la direction ou à la
conduite, y compris des informations
sur la dynamique de groupe et les types
de groupes.
Principes essentiels du kit de sécurité pour gérer des profils utilisateurs
par Dan Riehl - Mis en ligne le 30/03/2005 - Publié en Mai 2004
L'OS/400 offre quelques superbes outils d'administration pour gérer les
profils utilisateur. Bien qu'il y ait profusion de commandes pour gérer ces profils,
j'ai choisi mes préférées que je vous conseille vivement d'ajouter à votre
kit, ou boîte à outils, de sécurité ...
Un bon réseau sans-fil est possible
par Randy Franklin Smith - Mis en ligne le 6/07/2005 - Publié en Juillet/Août 2004
Verrouillez les connexions
en provenance de
vos clients mobiles
Les réseaux sans fil peuvent être sécurisés si l'on utilise
les bonnes technologies. Pour ajouter un réseau sans fil sûr à
un réseau Windows existant, il suffit d'installer un ou plusieurs
AP (Access Points) sans fil conformes à 802.1x sur un
ordinateur utilisant Windows Server 2003 ...Le serveur
Windows 2003 facilitera l'authentification 802.1x entre les
clients sans fil et le réseau Windows existant. Les utilisateurs
pourront accéder au réseau sans fil simplement par leurs
comptes utilisateur Windows existants.
Yukon : Une mine d’or
Déjà 13 pépites
Yukon, dont la livraison est prévue fin juin pour la version beta et fin novembre pour la version finale, est la dernière version de Microsoft SQL Server. Il marque la fin d’un cycle de développement de 5 ans pour Microsoft ...La firme a ajouté tellement de nouvelles fonctions à Yukon qu’il est impossible de les énumérer toutes dans un seul article. Voici donc 13 pépites d’or que l’on risque fort de trouver dans la prochaine release notable de SQL Server.
Accéder à l’iSeries en utilisant .NET Data Provider d’IBM
par Michael Otey - Mis en ligne le 23/02/2005 - Publié en Avril 2004
Connectez les applications .NET à l'iSeries avec ce nouvel outil iSeries Access for Windows
Si vous appeliez de vos voeux un moyen facile pour que vos applications
Visual Basic .NET mettent à jour des données sur l'iSeries, c'est chose faite.
iSeries Access for Windows offre désormais un nouveau DB2 UDB for iSeries
.NET Data Provider avec lequel vous pourrez connecter des applications .NET
à l'iSeries ...Il est vrai qu'il existe d'autres moyens pour connecter des applications .NET
à l'iSeries : .NET Framework Data Provider for ODBC et .NET Framework Data
Provider for OLE DB, tous deux de Microsoft. Cependant, d'après IBM, la
connexion à l'iSeries sera plus performante avec son nouveau iSeries .NET Data
Provider qu'avec les deux autres méthodes. Avant de voir dans le détail comment
utiliser l'iSeries .NET Data Provider, commençons par jeter un coup d'oeil
aux principes de base de l'ADO.NET framework.
Un détour par WebSphere Development Studio Client 5.1
par George Farr et Phil Coulthard - Mis en ligne le 09/02/2005 - Publié en Mars 2004
Dans notre série d'articles Trajet
(consulter les articles), nous avons
inscrit chacune des étapes d'un trajet
pour ceux qui désirent actualiser leurs
compétences et moderniser leurs applications.
Ici, nous nous autorisons un
petit détour en chemin pour parler de
la nouvelle release 5.1 de WSDc (Web-
Sphere Development Studio Client),
qui contient la plupart des outils décrits
dans le trajet ...La release 5.1 de WSDc a été mise
en disponibilité générale le 17 octobre
2003, pour les éditions standard et
advanced. Rappelons que la numérotation
de ces outils client est en cohérence
avec WAS (WebSphere Application
Server), et pas avec OS/400.
Donc, ces outils client sont compatibles
avec toutes les releases actives
d'OS/400. Par conséquent, ils peuvent
travailler avec le source de n'importe
quel iSeries en V5R1 ou ultérieure. Le
numéro 5.1 de cette release est légèrement
décalé car il est conçu pour supporter
la nouvelle release 5.02 de WAS,
disponible depuis peu sur toutes les
plates-formes, dont iSeries. Ce système
de numérotation a une raison :
cette release des outils est proactive et
elle supportera également une éventuelle
prochaine release 5.1 de WAS.
La release 5.1 est relativement modeste
pour les outils, compte tenu que
la livraison de la release 5.0 ne remonte
qu'à quelques mois (le 25 avril). C'est
néanmoins une importante release
dont les points forts sont la qualité, la
performance, et une requête poussée
de la part des utilisateurs.
Les nouveautés de la semaine 50 – Windows 2000 et .Net – 2004
Tous les nouveaux produits du 6 au 12 Décembre 2004
Lire l'article
Déplacer les profils utilisateurs
Prêt à bricoler un peu ?
Vous ne pensez probablement pas beaucoup au temps passé à travailler sur des profils. Pourtant, si vous ajoutez toutes les minutes consacrées à modifier ce paramètre d’application et cette astuce de desktop, vous constaterez que vous avez peut-être passé des mois à transformer vos profils utilisateur en chefs-d’oeuvre personnels ...Le comble, c’est quand il faut recommencer. Supposez que votre desktop soit désaffecté ou peut-être qu’il faille simplement passer à un système plus rapide. Comment pouvez-vous soit restaurer vos paramètres à partir d’une sauvegarde, soit les transférer de l’ancien ordinateur sur le nouveau ? En gros, vous avez trois possibilités : deux approches faciles mais limitées et une approche souple et polyvalente. Malheureusement, cette dernière n’est pas documentée et demande un peu de bricolage. Commençons par les principes de base.
Actualités Windows NT / 2000 – Semaine 46 – 2004
Toutes les Actualités du 8 au 14 Novembre 2004
Lire l'article
Actualités Windows NT / 2000 – Semaine 43 – 2004
Toutes les Actualités du 18 au 24 Octobre 2004
Lire l'article
Technologie cache FRCA de la V5R2, Première partie
par Brian R. Smith - Mis en ligne le 29/09/2004 - Publié en Décembre 2003
Dopez votre livraison de contenu Web
Le FRCA (Fast Response Cache
Accelerator) est une nouvelle architecture
de caching pour l'iSeries HTTP
Server (animé par Apache) introduite
dans la V5R2 (toutes les références à
HTTP Server de cet article sous-entendent
HTTP Server animé par Apache)...FRCA constitue un bond technologique
spectaculaire pour l'iSeries,
parce qu'il peut livrer le contenu Web
jusqu'à sept fois plus vite qu'en utilisant
des fichiers servis par l'IFS (integrated
file system) et plus de quatre
fois plus vite que le cache local traditionnel
dans le HTTP Server. FRCA
offre cette performance tout en utilisant
environ de quatre à sept fois
moins de ressources de CPU par transaction.
Ces deux possibilités jointes
confèrent à FRCA une puissance hors
du commun.
Ceci est le premier de deux articles
sur cette importante nouvelle technologie.
Cette 1re partie donne une vue
d'ensemble des possibilités et des
fonctions de FRCA. La 2e partie, prévue
dans un futur numéro d'iSeries
NEWS, expliquera comment configurer
un HTTP Server pour traiter à la fois
le caching reverse-proxy et local FRCA.
Mise en place d’AD rapide et automatisée
Utilisez les fichiers batch pour construire votre réseau d’AD
Il m’arrive souvent de tester des configurations pour des clients, de rechercher des sujets d’articles, ou d’installer des machines de démonstration pour des cours. Tout cela m’amène à construire constamment de nouveaux réseaux d’AD (Active Directory) à partir de zéro. Les wizards deviennent rapidement pénibles, et j’ai parfois l’impression de passer une bonne partie de ma journée à attendre que des outils de type GUI me demandent une entrée.Depuis l’époque de PC-DOS 1.0, je suis un chaud partisan des fichiers batch. J’ai donc créé une série d’outils batch me permettant de mettre en place rapidement des réseaux d’AD avec un minimum d’intervention personnelle. Ce mois-ci, je vais partager avec vous ces intéressants outils automatisés.
Par souci de simplicité, je limite l’exemple de cet article à un réseau extrêmement simple constitué de deux serveurs: UptownDC et Downtown DC. L’un des serveurs est une machine Windows Server 2003 et l’autre est un serveur Windows 2000. Les outils de support et le service DNS Server sont installés sur les deux. Ma première tâche consiste à établir des adresses IP statiques sur UptownDC et DowntownDC et à définir le suffixe DNS pour qu’il corresponde à la zone DNS à créer sous peu. Les adresses IP de UptownDC et de DowntownDC sont, respectivement, 192.168.0.2 et 10. 0.0.2. Les deux serveurs se trouvent dans les réseaux en subnet- C, c’est-à-dire qu’ils utilisent les masques subnet de 255.255.255.0.
Je vais créer un domaine AD nommé bigfirm.biz mais avant cela, il me faut créer une zone DNS nommée bigfirm.biz – et cette opération est plus simple si mes serveurs DNS possèdent déjà le suffixe DNS bigfirm.biz. Par conséquent, je dois d’abord définir une adresse IP statique et un suffixe DNS. Malheureusement, je n’ai pas trouvé de bon moyen permettant de renommer les systèmes Win2K à partir de la ligne de commande. (L’outil Renamecomputer de Netdom ne vaut que pour des systèmes qui sont déjà joints aux domaines.) Il me faut donc définir les noms de machines de UptownDC et de DowntownDC à partir de la GUI.
Déploiement entre le poste et la sécurité
Connectivity Secure Term de Hummingbird fournit une émulation de terminal sécurisée et des services de transfert de fichiers pour iSeries fonctionnant avec Linux.
Connectivity Secure Term offre un choix de déploiement entre le poste et la sécurité de type browser pour les clients connectés aux hôtes Linux et Unix.
Lire l'article
Etes vous prêt pour la gestion des sinistres ?
Cette étude indépendante révèle que les services informatiques des grandes entreprises ne sont pas correctement préparés. 92% des sociétés internationales seraient confrontées à de graves conséquences si elles devaient mettre en oeuvre leur plan de reprise d'activité.
Une nouvelle étude révèle que les services informatiques des grandes entreprises ne sont pas correctement préparés à la gestion d'un sinistre.
Lire l'articleLes plus consultés sur iTPro.fr
- D’ici 2030, jusqu’à 90 % du code pourrait être écrit par l’IA, pour les jeunes développeurs, l’aventure ne fait que commencer
- Hyperconnectés depuis janvier, épuisés en décembre : le poids de la fatigue numérique
- Sécurité des équipes : les organisations à la peine
- Top 5 TechnoVision 2026 des tendances technologiques à suivre de près !
- Maîtriser l’observabilité des données IA
