Un exemple un peu plus intéressant montre comment chaque langage peut fournir rapidement une interface de table HTML sur une requête de base de données DB2. Par souci de brièveté, supposons que vous avez déjà créé une table NAMES dans le schéma NOBODY avec les colonnes
Simple DB2 Script Net.Data vs PHP
FIRST varchar(15) et LAST varchar(15) et que vous avez inséré quelques noms dans la table.
Comme rappel utile, le profil QTM HHTTP1 (par défaut Net.Data) et le profil NOBODY (Zend Core PHP) devraient avoir l’accès RX au schéma NOBODY (il est difficile de détecter cette erreur d’autorisation de sécurité). Dans le domaine de l’accès DB2, PHP (figure 3) et Net.Data (figure 4) ont tous deux une syntaxe DB2 raisonnablement simple pour se connecter, exécuter des instructions SQL et atteindre des résultats. Zend Core for i5/OS a un ensemble d’API bases de données préfixé par DB2 (extension ibm_db2 PECL), des API préfixées par odbc (extension ODBC PECL) et des API préfixées par i5 (Toolkit).
Toutes ces extensions donnent accès à des bases de données DB2 dans leur contexte de programmation respectif. L’API la plus couramment utilisée est ibm_db2 (utilisée dans cet article). Les appels db2_apiname peuvent être codés librement au travers du script PHP. Net.Data découpe le code SQL en blocs de fonction dtw_sql, sans qu’aucune API préfixée supplémentaire ne soit demandée. PECL est la PHP Extension Community Library, un répertoire des extensions PHP qui recense toutes les extensions et facilités d’hébergement connues pour le téléchargement et le développement des extensions PHP (pecl. php.net).
Le système de packaging et de distribution utilisé par PECL est partagé avec sa soeur, PEAR (pear.php.net). IBM a contribué avec ibm_db2 au référentiel PECL, que j’ai aidé à modifier pour qu’il fonctionne sur PASE i5/OS (s’il vous plaît, pas de mail vindicatif : ce monde PHP sur i5/OS est en cours d’évolution, donc soyez à l’affût de PTF DB2 supplémentaire pour votre machine). Net.Data fait merveille pour la construction rapide de vues bases de données HTML parce qu’il fournit une directive de table HTML simple telle que @dtw_ assign(dtw_ html_table, "yes"), comme dans la figure 4.
De plus, les excellentes structures %RE PORT{%ROW} de Net.Data sont bien supérieures aux instructions PHP codées à la main, parce qu’elles évitent le bouclage en ligne courant dans la plupart des autres langages script (figure 3). PHP pourrait s’inspirer de l’exemple Net.Data. Tant avec PHP qu’avec Net.Data, les bases de données DB2 peuvent être locales ou distantes (DRDA). L’API de connexion PHP db2_p connect(database,user,password) vous permet de spécifier une base de données distante DRDA. Net.Data vous permet de vous connecter à une base de données distante par l’intermédiaire de %define(s) spéciaux de DATABASE, LOGIN et PASSWORD.
Les deux langages adoptent par défaut localhost (*LOCAL) si aucune base de données n’est spécifiée et autorisent des connexions bases de données persistantes (réutilisables) pour accroître la performance des scripts courants. Le traitement des messages Net.Data est généralement fondé sur le moniteur.
Le moniteur %message vous laisse le choix : poursuivre le programme ou terminer. En général, PHP procédural a tendance à utiliser des API PECL basées sur code de retour avec transfert du contrôle à la discrétion du programmeur, au point d’erreur. Cependant, PHP 5 (Zend Core for i5/OS) a un modèle d’exception supplémentaire, comme d’autres langages de programmation modernes, visant à utiliser un paradigme « throw-try-catch » (non approfondi dans cet article).
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
- Et si les clients n’avaient plus le choix ?
- Activer la mise en veille prolongée dans Windows 10
- Afficher les icônes cachées dans la barre de notification
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
Les plus consultés sur iTPro.fr
- Baromètre channel IT : fin du cuivre, essor de UCaaS et premiers pas vers l’IA
- Fraude par identité synthétique : comment l’IA peut redonner confiance aux entreprises et à leurs clients
- VirtualBrowser protège la navigation web à la source
- Innovation et performance : le rôle clé du consulting dans la transformation numérique
Articles les + lus
Moderniser le développement logiciel : de la fragmentation à l’intégration
Analyse Patch Tuesday Mars 2026
Une nouvelle ère de la modernisation du mainframe
Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
À la une de la chaîne Tech
- Moderniser le développement logiciel : de la fragmentation à l’intégration
- Analyse Patch Tuesday Mars 2026
- Une nouvelle ère de la modernisation du mainframe
- Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
- DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
