Utilisez l'API DBxAdminGetReferencedFiles ou la commande GET REFERENCED FILES pour répertorier les fichiers de supports externes qui sont référencés par les tables utilisateur ou par certaines de ces tables dans la base de données en cours. Utilisez l'API DBxGetReferencedFiles ou la commande GET REFERENCED FILES pour répertorier les fichiers de supports externes qui sont référencés dans une table particulière.
Utilisation de l'interface API : Le modèle de code dans l'exemple qui suit indique le nombre de fichiers trouvés et les répertorie. Le modèle de programme complet se trouve dans le fichier API.C du sous-répertoire SAMPLES.
Figure 15. Modèle de code permettant d'obtenir une liste de fichiers référencés
/*-- Interrogation de la base de données via l'API DBiAdminGetReferencedFiles. --*/ step="DBiAdminGetReferencedFilesAPI" rc = DBiAdminGetReferencedFiles((char*) uid, &count, &filelist); if (rc < 0) { printf("%s: %s FAILED!\n", program, step); printMsg(rc); DBiGetError(&sqlcode, errorMsgText); printf{"sqlcode=%i, errorMsgText=%s\n", sqlcode, errorMsgText); } else if (rc > 0) { printf("%s: %s, warning detected.\n", program, step); printMsg(rc); DBiGetError(&sqlcode, errorMsgText); printf("sqlcode=%i, errorMsgText=%s\n", sqlcode, errorMsgText); } else { if (count == 0) printf("%s: no referenced files\n", program); else { printf("%s: %d referenced files\n", program, count); for (i=0; i < count; i++) { printf ("filename = %s\n", filelist[i].filename); printf ("\tqualifier = %s\n", filelist[i].tqualifier); printf ("\ttable = %s\n", filelist[i].tname); printf ("\thandle = %s\n", filelist[i].handle); printf ("\tcolumn = %s\n", filelist[i].column); if (filelist[i].filename) free (filelist[i].filename); } } if (filelist) free (filelist); printf("%s: %s PASSED\n\n", argv[0], step); } |
Utilisation de la ligne de commande db2ext :
get referenced files user anitas for db2image