Les tables temporaires globales : une alternative aux jeux de résultats?
par Kent Milligan, Mis en ligne le 3/05/2006 - Publié en Décembre 2005
Le langage procédural SQL permet de créer facilement des procédures stockées. Les structures de ce langage permettent aux développeurs SQL de coder des vérifications conditionnelles, d’effectuer un traitement itératif avec diverses structures de boucles, d’appeler d’autres procédures stockées, et de retourner efficacement des jeux de données via des jeux (ou ensembles) de résultats, le tout très simplement. (Si vous n’avez pas encore utilisé des jeux de résultats, considérez que c’est un paramètre de sortie contenant un ensemble de valeurs de données.) Les jeux (ou ensembles) de résultats sont utilisés couramment parce que (1) ils peuvent contenir des données provenant de tables multiples et (2) ils peuvent améliorer la performance en renvoyant un jeu de données sous forme de blocs au lieu d’une ligne à la fois.La figure 1 montre un exemple de procédure stockée nommée Get_ Free_Employees qui renvoie un jeu de résultats contenant les employés non encore affectés à un projet. Un paramètre d’entrée vient cantonner la recherche aux employés libres d’un département donné. L’en-tête de procédure inclut le comptage des jeux de résultats renvoyés par la procédure.
Dans la procédure elle-même, les jeux de résultats sont renvoyés parce que la clause With Return est incluse sur la définition du curseur et que le curseur est laissé ouvert après sortie de la procédure. (Voir l’encadré « PTF pour With Return to Client et With Return to Caller »). Le tableau de la figure 2 présente les données contenues dans le jeu de résultats renvoyé par cette procédure stockée.
Sur DB2 UDB for iSeries, seuls les clients utilisant les interfaces de programmation ODBC, JDBC ou CLI peuvent consommer les (ou accéder aux) jeux de résultats de procédures stockées. (Vous trouverez des exemples de coding montrant ces interfaces consommant des jeux de résultats dans l’IBM Redbook Stored Procedures, Triggers and User Defined Functions on DB2 Universal Database for iSeries.) Dans cette liste, l’absence du langage procédural SQL ne passe pas inaperçue. Si une procédure SQL appelle une autre procédure stockée qui renvoie un jeu de résultats, cette procédure SQL n’a aucun moyen d’accéder au contenu du jeu de résultats renvoyé par la procédure stockée. (Remarque : Embedded SQL est une autre interface classique présentant la même limitation. Les techniques mentionnées dans cet article s’appliquent aussi à cette interface. De plus, cette limitation n’existe que dans DB2 UDB for iSeries. Les autres produits DB2 UDB supportent des instructions SQL supplémentaires pour éliminer cette restriction.)
Les tables temporaires globales (introduites dans la V5R2) sont une fonction SQL qui permet de contourner cette limitation dans le langage procédural SQL. Vous pouvez utiliser une table globale pour contenir des données temporaires pour une connexion ou application base de données. Au lieu d’utiliser une procédure SQL pour renvoyer des données via un jeu de résultats, vous pourriez placer les mêmes données dans une table temporaire globale.
Ensuite, il suffirait que la procédure SQL invoquante connaisse le nom de la table temporaire pour pouvoir accéder aux données du jeu de résultats.
Certains programmeurs (particulièrement les anciens qui ont utilisé par le passé la bibliothèque QTEMP) se demanderont peut-être quelle est la différence entre l’utilisation des tables temporaires globales et la création de leurs propres tables temporaires dans un schéma (ou bibliothèque) spécial. Les tables temporaires globales SQL sont en fait créées dans la bibliothèque QTEMP par DB2 UDB.
Malgré l’utilisation de la bibliothèque QTEMP, SQL demande toujours que le qualificateur, explicite ou implicite, pour le nom de table temporaire soit SESSION. DB2 UDB ne crée pas une bibliothèque ou un schéma appelé SESSION : il utilise simplement le qualificateur SESSION comme une sorte d’alias pour la bibliothèque QTEMP. A l’instar des objets dans QTEMP, DB2 UDB supprime automatiquement la table temporaire à la fin de la connexion.
La V5R4 donne un coup de fouet à SQL
La plupart des nouvelles releases de DB2 UDB for iSeries incluent des améliorations progressives de SQL, comme de nouveaux types de données et de nouvelles fonctions intégrées. La V5R4 n’est pas différente à cet égard et présente de nouvelles fonctions intégrées pour le cryptage Triple DES, le traitement des dates et les fonctions d’échantillonnage. Par Kent Milligan - Dossier publié en Mai 2006
Les fonctions de SQL V5R4 dont il est question ici exigent le SQE (SQL Query Engine). Par conséquent, si votre environnement ou votre requête SQL contient un attribut non reconnu par SQE et si vous essayez d’utiliser l’une de ces nouvelles fonctions SQL, DB2 UDB signalera une erreur.
Voici quelques-uns des facteurs qui empêchent SQE d’honorer une requête SQL :
• Utilisation de
• Séquence de tri en langue nationale
• UDTF (user-defined table function)
• Références de fichier logique sur
• Fichiers logiques select/omit définis sur la table sousjacente
Pour plus de détails sur le support SQE, visitez www.ibm.com/iseries/db2/sqe.html.
Lire l'article
Groupes d’activation : premier aperçu
Le terme « groupes d’activation » est peu évocateur, a une résonance technique, et est un peu intimidant ! IBM aurait peut-être dû parler de « troupeaux de programmes ». On aurait alors imaginé des programmes informatiques parcourant les plaines herbeuses, se regroupant pour survivre, vivant ensemble et mourant ensemble. Mais peut-être suis-je un peu trop amateur de westerns. Plus prosaïquement, dans cet article, j’explique ce que sont les groupes d’activation et leur mérite pour un programmeur RPG.
Lire l'article
Les nouveautés de la semaine 25 – Windows IT Pro – 2006
Tous les nouveaux produits de la semaine du 19 au 25 Juin 2006
Lire l'article
Les nouveautés de la semaine 23 – Windows IT Pro – 2006
Tous les nouveaux produits de la semaine du 5 au 11 Juin 2006
Lire l'article
Les actualités de la semaine 20 – Windows IT Pro – 2006
Toutes les actualités du 15 au 21 Mai 2006
Lire l'article
Trucs & Astuces : PathPing va plus loin que Tracert
Les trucs & astuces de la semaine du 24 au 29 Avril 2006
Lire l'article
Quelques conseils pour sécuriser IIS
Donner du sens aux matrices d’éxécution en RPG
Au cours de ces dernières années, le traitement des matrices RPG a beaucoup changé. Les nouveautés affectent surtout la manière de les définir et de les traiter. Il existe beaucoup de variantes de l’ancienne matrice d’exécution. Outre les simples matrices de champs, on peut définir des matrices de structures de données, des matrices qualifiées, des matrices superposées, des matrices multidimensionnelles, des matrices allouées dynamiquement, et des structures de données à occurrences multiples. Chaque genre de matrice a ses forces et ses faiblesses : quelque-unes peuvent être grandes, d’autres ne peuvent être que petites. Certaines ont besoin d’une initialisation explicite, d’autres pas. Telles peuvent être triées, telles autres ne le peuvent pas.Cet article donne du sens aux matrices d’exécution. J’explique comment définir et initialiser chaque type de matrice, accéder aux éléments, trier des matrices et consulter les éléments. Pour approfondir certaines techniques de coding spécifiques, voir l’encadré « 7 conseils principaux sur les matrices »). Mais, commençons par revoir quelques principes de base sur les matrices.
Lire l'article
Les actualités de la semaine 25 – Windows IT Pro – 2006
Toutes les actualités du 19 au 25 Juin 2006
Lire l'article
DSREVOKE
L’un des points forts d’AD par rapport aux domaines de Windows NT 4.0, est la délégation : la possibilité de créer un utilisateur ou un groupe avec des pouvoirs définis de façon très détaillée. Sous NT 4.0, les utilisateurs sont soit tous puissants (membres du groupe Domain Admins, par exemple) soit relativement impuissants (membres du groupe Domain Users, par exemple). En revanche, AD permet de créer des « sous-administrateurs », c’est-à-dire des gens qui ont un pouvoir administratif, mais inférieur à celui d’un administrateur de domaine. AD permet aussi d’octroyer à certaines personnes le contrôle complet sur uniquement un sous-ensemble de domaine (c’est-à-dire, une OU – organizational unit). Mieux encore, avec son Delegation of Control Wizard, Microsoft a simplifié la tâche plutôt complexe que constitue la délégation.Cependant, la délégation d’AD n’a jamais été parfaite, et ce pour deux raisons. Premièrement, bien qu’un wizard aide à pratiquer la délégation, il n’en est pas qui permette d’annuler cette même délégation. Or, il est toujours difficile de retirer un pouvoir que l’on a accordé.
Il faut pour cela creuser au travers de plusieurs couches de la GUI de sécurité. Deuxièmement, AD ne permet pas de déterminer facilement quelles délégations vous avez instaurées. Avec son superbe outil ligne de commande Dsrevoke, Microsoft a simplifié les deux processus : celui de la documentation et celui de l’annulation des délégations existantes. Vous trouverez Dsrevoke au Microsoft Download Center (http://www.microsoft.com/downloads).
News iSeries – Semaine 20 – 2006
Toutes les actualités de la semaine du 15 au 21 Mai 2006
Lire l'article
Transférer des données de l’iSeries à SQL Server
par Michael Otey, Mis en ligne le 26/04/2006 - Publié en Décembre 2005
En novembre, Microsoft a présenté SQL Server 2005. Cette release modifie totalement le mode de transfert de données entre SQL Server et d’autres plates-formes base de données (pour plus d’informations sur la release, voir l’encadré « Les nouveautés de SQL Server 2005 »). L’outil DTS (Data Transformation Services) qui faisait partie de SQL Server 7 et de SQL Server 2000, a disparu. Il cède la place au nouveau SSIS (SQL Server Integration Services). SSIS et DTS sont complètement différents, au point que toutes les techniques qui servaient à transférer des données entre l’iSeries et SQL Server avec DTS ont été profondément modifiées. Dans cet article, j’explique comment utiliser SSIS pour transférer des informations base de données de l’iSeries sur SQL Server 2005.
Network Access Protection sur Windows Server 2003 R2
La gestion simultanée des environnements Windows et UNIX coûte-t-elle cher à votre entreprise ?
Réduisez vos coûts et utilisez la puissance d'UNIX - avec Secure Shell, scp, sftp, secure X, Kornshell, CShell, awk. telnet server, xterm, rsh, rlogin et plus de 400 commandes et utilitaires additionnels pour gérer votre environnement Windows avec la puissance des outils UNIX. Tous les produits MKS Toolkit sont entièrement supportés et disponibles aussi bien pour les systèmes Windows 64-bit que les systèmes Windows 32-bit. Utilisez l'expertise de vos Développeurs et vos Administarteurs Système à la fois sur Windows et UNIX.
Lire l'article
Trucs & Astuces : Commande ARP sur iSeries
Les trucs & astuces de la semaine du 19 au 25 Juin 2006
Lire l'article
Ouvrir les connexions à distance
Si, comme beaucoup de vos homologues, vous êtes chargés de l’administration et du support du poste et si vous êtes aussi débordés qu’eux, vous avez probablement relégué certaines fonctions utilisateur de Windows XP sur le pourtour de l’écran radar, pour vous concentrer sur des sujets plus importants. Remote Desktop est une de ces fonctions jugées de faible priorité dans la plupart des sites IT, et ce pour plusieurs raisons. La principale est peut-être la suivante : l’idée de laisser des utilisateurs se connecter à leurs postes à partir du domicile, de l’hôtel ou de tout autre endroit, suscite toujours de grandes craintes pour la sécurité.Si votre entreprise ne permet pas une telle connectivité, vous pouvez mettre en avant la politique maison pour repousser les utilisateurs désireux de se connecter à partir d’un lieu distant. Mais beaucoup d’entre nous devront satisfaire la frange d’utilisateurs dont les demandes ont l’onction la haute direction, et devront bon gré mal gré mettre en oeuvre des fonctions délicates. Dans cet article, je vais essayer d’atténuer vos craintes à propos de la connectivité à distance, en expliquant ce qui fait fonctionner Remote Desktop et comment configurer sa sécurité. Vous pourriez même trouver dans Remote Desktop d’excellentes prestations pour le support à distance des systèmes utilisateur.
Lire l'article
Mettez-vous en conformité : éliminez les risques majeurs !
par Dan Riehl, Mis en ligne le 10/05/2006 - Publié en Janvier 2006
Jouons à Jeopardy ! « La catégorie est le calendrier IT ».
Pour 400 euros, la réponse est SOX, ISO19977, COBIT, COSO, GLBA, HIPAA, et autres ».
Bip, bip. « Alex, la question est : pour quelles lois, réglementations, standards et structures d’audit, mon entreprise consacrera beaucoup de temps de travail et d’argent en 2005, 2006 et au-delà ? »
« Correct ! Pour 400 euros ! »
Mais est-ce inéluctable ? Nous pouvons et devons réduire le coût et l’effort de pratiquer la conformité et de la démontrer par rapport à la sécurité de notre iSeries. Si nous sommes capables de percevoir les principaux risques et de mettre en oeuvre et d’utiliser des outils intelligents (conjointement aux facultés natives du système d’exploitation) pour identifier et atténuer ces préoccupations, nous pourrons réduire les coûts et démontrer notre conformité, beaucoup plus facilement.
Améliorer et ajuster la performance de l’IFS, 1ère partie
par Richard Theis, Mis en ligne le 26/04/2006 - Publié en Novembre 2005
L’IFS i5/OS est solide, évolutif, fiable et hautement disponible. Peut-il aussi être très performant ? Si vous répondez négativement à cette question, lisez ce qui suit car vous pourriez bien trouver quelques conseils de performance IFS qui changeront votre opinion. Et même si vous répondez oui, il se pourrait bien que quelques-uns des conseils, pas tellement connus, de cet article soient capables de le rendre encore plus performant.Cet article est le premier d’une série de deux contenant des conseils et des astuces visant à améliorer et à régler finement les performances de l’IFS. Cet article donne des conseils sur les performances générales et de répertoires, tandis que le second s’intéressera aux performances des fichiers stream. D’une manière générale, les conseils des deux articles vont du général au spécifique et devraient améliorer le fonctionnement de l’IFS tant sur le plan global que sur celui des applications. Cependant, pour tenir compte des écueils habituels quant aux données de performances, veuillez lire l’avertissement à la fin de cet article.
On sait que l’IFS comprend dix systèmes de fichiers uniques. Mais, en matière de performances générales de l’IFS, les systèmes de fichiers racine (/), QopenSys, et définis par l’utilisateur (UDFS, user-defined file systems) sont généralement impliqués. Par conséquent, dans cet article et dans le suivant, les conseils et le terme « système de fichiers » s’appliquent à ces trois systèmes.
News iSeries – Semaine 38 – 2006
Les actualités de la semaine du 18 au 24 Septembre 2006
Les plus consultés sur iTPro.fr
- Analyse Patch Tuesday Juin 2026
- La bataille de la 6G se gagne dans la donnée en temps réel
- BlueSecure repense la sensibilisation à la cybersécurité avec des formats immersifs et engageants
- Les agents d’IA fragilisent la sécurité : pour les sécuriser, inutile de repartir de zéro
Articles les + lus
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
Analyse Patch Tuesday Mai 2026
À la une de la chaîne Tech
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
- Rhea1 : SiPearl allume le CPU européen le plus ambitieux pour le HPC et l’IA souveraine
- Analyse Patch Tuesday Mai 2026
