IBM Books

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

将对象检索至客户机

可使用 Content UDF 来将图象、音频或视频对象检索至客户机缓冲区或客户机文件, 且不进行格式转换。另外,还可以选择让 Image Extender 在检索图象时转换其格式。

将对象检索至客户机,不进行格式转换

使用 LOB 定位器来将图象、音频或视频对象检索至客户机缓冲区, 或检索 LOB。使用文件引用变量来将图象、音频或视频对象检索至客户机 文件。

当对象的内容以 BLOB 形式存储在数据库表中时, 使用主变量将图象、音频或视频对象检索至客户机缓冲区, 或使用文件引用变量将其检索至客户机文件是合适的。若内容位于服务器文件中,则将内容从客户机文件复制至客户机文件可能更有效率。

指定对象的句柄。您还可选择指定从字节 1 开始的位移 (检索的起始位置),以及要检索的字节数。

C 应用程序中的下列语句使用名为 audio_loc 的 LOB 定位器来将音频剪辑检索到客户机缓冲区中。

EXEC SQL BEGIN DECLARE SECTION;
  SQL TYPE IS BLOB_LOCATOR audio_loc;
   EXEC SQL END DECLARE SECTION;
 
EXEC SQL SELECT CONTENT(
        SOUND)                               /* audio handle */
     INTO :audio_loc
  FROM EMPLOYEE
     WHERE NAME = 'Anita Jones';

确保有足够的 UDF 内存:当将对象检索至客户机缓冲区时,需要确保将“数据库管理程序配置” 中的 UDF_MEM_SZ 参数 设置为 4 MB 或更大。可用 DB2 命令 UPDATE DATABASE MANAGER CONFIGURATION 来更新 UDF_MEM_SZ 参数。 有关 UPDATE DATABASE MANAGER 命令的信息, 参见出版物 DB2 Command Reference

将图象检索至客户机,并进行转换

使用 LOB 定位器来将存储的图象检索至客户机缓冲区,并进行格式转换, 或使用 LOB 定位器来检索 LOB。使用文件引用变量来将存储的图象检索至客户机文件, 并进行格式转换。

当图象的内容以 BLOB 形式存储在数据库表中时, 使用主变量将图象检索至客户机缓冲区, 或使用文件引用变量将其检索至客户机文件是合适的。若内容位于服务器文件中,则将内容从客户机文件复制至客户机文件可能更有效率。

若检索图象时进行格式转换,则需要指定其目标格式,即转换后的格式。表 4标识了允许的格式转换。还可指定转换选项, 它们标识要应用于检索到的图象的其他更改(如旋转或按比例缩放)。表 5列示了可指定的转换选项。

例如,C 应用程序中的下列语句将图象检索至客户机文件。源图象处于位图格式, 它以 BLOB 形式存储在数据库表中。将检索到的图象转换为 GIF, 并按比例放大为其原始大小的 3 倍。

EXEC SQL BEGIN DECLARE SECTION;
  SQL TYPE IS BLOB_FILE Img_file;
   EXEC SQL END DECLARE SECTION;
 
strcpy (Img_file.name, "/Employee/images/ajones.gif");
Img_file.name_length= strlen(Img_file.name);
Img_file.file_options= SQL_FILE_CREATE;
 
EXEC SQL SELECT CONTENT(
                 PICTURE,                              /* image handle */
        'GIF',                               /* target format */
        '-s 3.0')                            /* conversion options */
     INTO :Img_file,
  FROM EMPLOYEE
     WHERE NAME = 'Anita Jones';


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