SQL0805N Package "<package-name>" was not found
- Si l'environnement était propre jusqu'alors, on pourra se contenter de refaire le bind du programme concerné.
- Si le contexte est défavorable (environnement instable), il vaut mieux rejouer la totalité des binds de la totalité des programmes. Cela rendra la situation plus claire.
Re-Exécution des Bind pour les programmes référencés en table PG15
db2 -x "select pkgname from syscat.packages, ${HRSCHEMA}.pg15 where pkgschema='${HRSCHEMA}' and pkgname=rtrim(rdprog)||cdprog" | while read BND
do
[ ! -f $SIGACS/prod/bnd/${BND}.bnd ] && echo "<W> Fichier ${BND}.bnd inexistant" && continue
if ! db2 "bind $SIGACS/prod/bnd/${BND}.bnd collection ${HRSCHEMA} datetime iso isolation UR qualifier ${HRSCHEMA}" ; then
echo "<W> Bind Ko pour ${BND}.bnd"
else
echo "<I> Bind Ok pour ${BND}.bnd"
fi
done > ${LOG}/ReBind.log 2>&1
Exécution du Bind pour les programmes présents dans $SIGACS/prod/bnd mais absents en base de données
ls $SIGACS/prod/bnd | grep '\.bnd$' | while read F
do
BND=$(basename $F .bnd)
EXIST=$(db2 -x "select count(*) from syscat.packages where pkgschema='${HRSCHEMA}' and pkgname='${BND}'")
if [ ${EXIST} -eq 0 ]; then
if ! db2 "bind $SIGACS/prod/bnd/${BND}.bnd collection ${HRSCHEMA} datetime iso isolation UR qualifier ${HRSCHEMA}" ; then
echo "<W> Bind Ko pour ${BND}.bnd"
else
echo "<I> Bind Ok pour ${BND}.bnd"
fi
fi
done > ${LOG}/NewBind.log 2>&1
FYI : la liste des packages générés par DB2 lors d'un bind est accessible à travers la vue "syscat.packages".
Aucun commentaire:
Enregistrer un commentaire