图象 | 音频 | 视频 |
---|---|---|
X |
将图象的内容存储在数据库表中。图象源可以在客户机 缓冲区、客户机文件或服务器文件中。可将图象以 BLOB 形式存储在数据库表中, 或存储在服务器文件中(由数据库表引用)。图象源可以处于受支持的格式,在这种情况下,DB2Image Extender 标识其存储属性, 也可处于不受支持的格式,在这种情况下,必须在 UDF 中指定属性。
包含文件
dmbimage.h
语法
从缓冲区或客户机 文件存储内容
>>-DB2Image--(--dbname--,--content--,--source_format--,---------> >----target_file--,--comment--)--------------------------------><
语法
从服务器文件存储内容
>>-DB2Image--(--dbname--,--source_file--,--source_format--,-----> >----stortype--,--comment--)-----------------------------------><
语法
从缓冲区或客户机文件存储具有用户提供的属性的内容
>>-DB2Image--(--dbname--,--content--,--target_file--,-----------> >----comment--,--attrs--,--thumbnail--)------------------------><
语法
从服务器文件存储具有用户提供的属性的内容
>>-DB2Image--(--dbname--,--source_file--,--stortype--,--comment--,--> >---attrs--,--thumbnail--)-------------------------------------><
语法
从缓冲区或客户机文件更新内容, 并进行格式转换
>>-DB2Image--(--dbname--,--content--,--source_format--,---------> >----target_format--,--target_file--,--comment--)--------------><
语法
从服务器文件存储内容,并进行格式转换
>>-DB2Image--(--dbname--,--source_file--,--source_format--,-----> >----target_format--,--target_file--,--comment--)--------------><
语法
从缓冲区或客户机文件存储内容, 并进行格式转换和其他更改
>>-DB2Image--(--dbname--,--content--,--source_format--,---------> >----target_format--,--conversion_options--,--target_file--,----> >----comment--)------------------------------------------------><
语法
从服务器文件存储内容,并进行格式转换和其他更改
>>-DB2Image--(--dbname--,--source_file--,--source_format--,-----> >----target_format--,--conversion_options--,--target_file--,----> >----comment--)------------------------------------------------><
参数(数据类型)
返回值(数据类型)
图象的句柄 (DB2IMAGE)
例
将包括 Anita Jones 的图象的记录插入到 Employee 表中。图象源在客户机缓冲区中。将图象以 BLOB 形式存储在表中:
EXEC SQL BEGIN DECLARE SECTION SQL TYPE IS BLOB (2M) hvImg EXEC SQL END DECLARE SECTION; EXEC SQL INSERT INTO EMPLOYEE VALUES( '128557', 'Anita Jones', DB2IMAGE( CURRENT SERVER, :hvImg, 'ASIS', CAST(NULL as LONG VARCHAR), 'Anita''s picture'));
将包括 Robert Smith 的图象的记录插入到 Employee 表中。图象源在服务器文件中。Employee 表记录将指向该文件。存储时,将图象的格式由 BMP 转换为 GIF。 并将图象修剪成宽度为 110 象素,高度为 150 象素, 并使用 LZW 类型压缩来压缩图象:
EXEC SQL INSERT INTO EMPLOYEE VALUES( '384779', 'Robert Smith', DB2IMAGE( CURRENT SERVER, '/employee/pictures/rsmith.bmp', 'BMP', 'GIF', '-x 110 -y 150 -c 14', '', 'Robert"s picture'));
将包括 Robert Smith 的图象的记录插入到 Employee 表中。服务器文件中的源图象具有用户定义的格式, 高度为 640 象素,宽度为 480 象素。以 BLOB 形式存储图象:
EXEC SQL BEGIN DECLARE SECTION; long hvStorageType; struct { short len; char data[400]; }hvImgattrs; EXEC SQL END DECLARE SECTION; DB2IMAGEATTRS *pimgattr; hvStorageType = MMDB_STORAGE_TYPE_INTERNAL; pimgattr = (DB2IMAGEATTRS *) hvImgattrs.data; strcpy(pimgattrt>cFormat,"FormatI"); pimgattr>width=640; pimgattr>height=480; hvImgattrs.len=sizeof(DB2IMAGEATTRS); EXEC SQL INSERT INTO EMPLOYEE VALUES( '128557', 'Anita Jones', DB2IMAGE( CURRENT SERVER, '/Employee/images/ajones.bmp', :hvStorageType, 'Anita''s picture', :hvImgattrs, CAST(NULL as LONG VARCHAR)) );