使用 QbSetAutoCatalog API 或 SET QBIC AUTOCATALOG 命令
从自动编目更改为人工编目,或从人工更改为自动。在更改目录设置之前,必须为更新操作打开 QBIC 目录。
更改不可回溯:当您更改自动编目设置时, 该更改仅应用于在更改之后添加至用户表列的图象。已存储在 用户表列中的图象不受影响。例如,若将设置由人工编目更改为自动编目, 将只对在更改之后添加至用户表列的图象进行自动编目。若要编目已在表列中的图象, 则需要进行人工编目。(参见人工编目图象 以获取有关如何人工编目图象的信息。
使用 API:在使用 QbSetAutoCatalog API 时, 指定 QBIC 目录的句柄(此句柄是在您用 QbOpenCatalog API 打开目录时 返回的)。另外还指定自动编目值 1(表示自动编目)或值 0(表示人工编目)。
在下例中,对与 employee 表的 picture 列中的图象相关联的 QBIC 目录指定了人工编目。注:首先为更新目录的操作打开 QBIC 目录。
SQLINTEGER mode; SQLINTEGER autoCatalog=0; /* manual cataloging */ QbCatalogHandle *CatHdl; mode=qbiUpdate; /* open catalog for */ /* update */ /* Open a QBIC catalog */ rc=QbOpenCatalog( "employee", /* user table */ "picture", /* image column */ mode, /* open catalog mode */ &CatHdl); /* catalog handle */ /* Change the auto catalog setting */ rc=QbSetAutoCatalog( CatHdl, /* catalog handle */ autoCatalog); /* auto catalog flag */
使用命令行:发出 SET QBIC AUTOCATALOG 命令时, 可指定 ON 指示进行自动编目。指定 OFF 则指示进行人工编目。此命令对当前打开的目录进行操作。
例如,以下命令对当前打开的 QBIC 目录将自动编目设置为 off:
SET QBIC AUTOCATALOG off