»ç¿ëÀÚ Å×ÀÌºí¿¡¼ ¿ÜºÎ ¹Ìµð¾î ÆÄÀÏÀ» ÂüÁ¶ÇÏ´Â Ç׸ñÀ» Á¡°ËÇÒ ¼ö ÀÖ½À´Ï´Ù. DBxAdminIsFileReferenced API¸¦ »ç¿ëÇÏ¿© ÇöÀç µ¥ÀÌÅͺ£À̽ºÀÇ Àüü ¶Ç´Â ÀϺΠ»ç¿ëÀÚ Å×ÀÌºí¿¡ ÀÖ´Â ¿ÜºÎ ¹Ìµð¾î ÆÄÀÏÀ» ÂüÁ¶ÇÏ´Â Ç׸ñÀ» Á¡°ËÇϽʽÿÀ. DBxIsFileReferenced API¸¦ »ç¿ëÇÏ¿© ƯÁ¤ »ç¿ëÀÚ Å×ÀÌºí¿¡ ÀÖ´Â ¿ÜºÎ ¹Ìµð¾î ÆÄÀÏÀ» ÂüÁ¶ÇÏ´Â Ç׸ñÀ» Á¡°ËÇϽʽÿÀ.
API »ç¿ë: ´ÙÀ½ÀÇ ¿¹½Ã¿¡ ÀÖ´Â »ùÇà ÄÚµå´Â ÆÄÀÏÀÌ ÂüÁ¶µÇ´Â Àå¼Ò¿Í ÂüÁ¶µÇ´Â Ƚ¼ö¸¦ ¸®ÅÏÇÕ´Ï´Ù. À̰ÍÀº ÀϺΠ¿À·ù Á¡°Ë Äڵ带 Æ÷ÇÔÇÕ´Ï´Ù. ¿ÏÀüÇÑ »ùÇà ÇÁ·Î±×·¥Àº SAMPLES ¼ºêµð·ºÅ丮ÀÇ API.C ÆÄÀÏ¿¡ ÀÖ½À´Ï´Ù.
±×¸² 14. »ç¿ëÀÚ Å×À̺íÀÌ ÆÄÀÏÀ» ÂüÁ¶ÇÏ´ÂÁö Á¡°ËÇÏ´Â »ùÇà ÄÚµå
/*---- Query the database using DBiAdminIsFileReferenced API. ------*/ step="DBiAdminIsFileReferenced API"; rc = DBiAdminIsFileReferenced((char*) uid, filename, &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, errorMsg Text); } else { if (count == 0) printf("%s: \"%s\" file is not referenced\n", program, filename); else { printf("%s: \"%s\" file is referenced %d times\n", program, filename); for (i=0; i < count; i++) { /* filename is NULL for any IsFileReferenced APIs */ 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); } |