bonjour
pouvez vous m'expliquer (en langage debutant lol ) les termes suivants :
- compilé
- "linké"
- "binde"
puis : package et plan
merci
Version imprimable
bonjour
pouvez vous m'expliquer (en langage debutant lol ) les termes suivants :
- compilé
- "linké"
- "binde"
puis : package et plan
merci
Sur un sujet voisin voir la réponse que j'avais faite ici
Bonjour,
Pas grand chose à ajouter par rapport à la réponse de Luc Orient. Quelques détail.
- Les ordres SQL sont vérifiés syntaxiquement au moment de la précompile et logiquement (existence des tables, des colonnes, ...) au moment du bind package.
- la précompile crée 2 sources, 1 source dbrm qui servira pour le bind et un source précompilé qui servira pour compile et linkedit. Le timestamp de création de ces 2 sources est le même et sera ensuite enrégistré dans le load module et dans le package, ce qui permet à DB2 de vérifier au moment de l'exécution du programme que load et package sont en phase (sinon -805, sachant qu'il est possible de forcer la main à DB2 pour ne pas faire cette vérif : paramètre de la précompile).
Pour le reste, je crois que Luc Orient avait déjà tout dit.
Bonne journée.
Mais qu'est ce que vous n'avez pas compris ?
Question complémentaire :
C'est quoi votre niveau en informatique ?
je n'ai pas compris ce que fait exactement
- "linké"
- "binde" => j'entends parle de "binde" un plan , "bindé" un package !!?
puis : package et plan
Je comprends la precompilation, la compilation mais les autres termes pas trop
Pour mon niveau informatique : cela depend du sujet (c'est vaste l'info ) :)
La notion de "link" ( "édition de liens" en français ) est classique et correspond à une phase de la préparation du programme. Elle est d'ailleurs totalement indépendante de DB2. Un programme qui ne fait pas de DB2 doit aussi passer par cette étape.
Le compilateur produit un module "objet" qui contient des instructions en langage machine. Mais ce module objet n'est pas exécutable tel quel, il doit passer par une phase dite de "link" qui permet de regrouper éventuellement d'autres modules objet, de faire un certain travail sur les adresses et de déterminer toutes les propriétés d'exécution non déterminées à la phase précédente ( la compilation ).
La sortie de ce processus s'appelle un "load module" et est stocké dans des bibliothèques particulières, les "loadlibs". Ce sont ces bibliothèques qu'on trouvera dans le JCL en JOBLIB ou STEPLIB ou encore mieux en LINKLIST ( hors JCL ).
Pour les questions sur DB2 ( BIND / PACKAGE / PLAN ), encore un fois je n'ai pas grand chose à ajouter à mon message précédent. Dites-moi ce que vous ne comprenez pas dans ce que j'ai écrit.