IBM Books

Image Extender、Audio Extender 和 Video Extender 管理和程序设计


第 9 章 清除管理支持表

使用 DB2 Extender 时,管理支持表中最后可能会累积过时的项目。某人可能删除了媒体文件,但未删除数据库中对它的引用。删除过时的元数据可改进性能并收回存储空间。

使用 API: 下列示例中的样本代码清除 ANITAS 拥有的所有用户表的图象数据。它包括一些差错检验代码。完整的样本程序在客户机上 SAMPLES 子目录中的 API.C 文件中。

图 16. 清除管理支持表的样本代码

/*---- query database using DBiAdminReorgMetadata API ----*/
step="DBiAdminReorgMetadata API";
rc = DBiAdminReorgMetadata("anitas");
if (rc < 0) {
        printf("%s: %s FAILED!\n", argv[0], step);
   printMsg(rc);
   DBiGetError(&sqlcode, errorMsgText);
        printf("sqlcode=%i, errorMsgText=%s\n", sqlcode, errorMsgText);
        fail = TRUE;
} else if (rc > 0) {
        printf("%s: %s, warning detected.\n", argv[0], step);
   printMsg(rc);
   DBiGetError(&sqlcode, errorMsgText);
        printf("sqlcode=%i, errorMsgText=%s\n", sqlcode, errorMsgText);
} else
        printf("%s: %s PASSED\n\n", argv[0], step);
 
/*---- end of query using DBiAdminReorgMetadata API ----*/

使用 db2ext 命令行:

reorg database user anitas for db2image

若您不是 DBA,但具有 CONTROL 权限, 可使用 DBxReorgMetadata API 或 REORG 命令 来清除您拥有的表的元数据。


[ 页的顶部 | 上一页 | 下一页 | 目录 | 索引 ]