您可以更新儲存為資料庫表格中之 BLOB 或在伺服器檔案 (以及從資料庫指向的檔案) 中的影像、音效或視訊物件。
若您更新來自從屬站緩衝區或從屬站檔案的物件, 請依照您在檔名參數中指定的結果,指示 BLOB 或伺服器檔案儲存體。如果是指定檔名, 表示您要更新其內容是在伺服器檔案中的物件。 如果是指定 NULL 檔名, 表示您要更新儲存為資料庫表格中之 BLOB 的物件。
例如,下列在 C 應用程式中的陳述式會更新其內容是在伺服器檔案中的影像。 更新來源在從屬站緩衝區中。同時也會更新影像註解。
EXEC SQL BEGIN DECLARE SECTION; SQL TYPE IS BLOB (2M) Img_buf EXEC SQL END DECLARE SECTION; EXEC SQL UPDATE EMPLOYEE SET PICTURE=REPLACE( PICTURE, :Img_buf, 'ASIS', '/employee/newimg/ajones.bmp', /*update image in*/ /*server file*/ 'Anita''s new picture') WHERE NAME='Anita Jones';
若更新來自伺服器檔案的物件,請指定 MMDB_STORAGE_TYPE_INTERNAL, 更新以 BLOB 的形式儲存在資料庫表格中的物件。
如果您要更新其內容是在伺服器檔案中的物件,請指定 MMDB_STORAGE_TYPE_EXTERNAL。
例如,在下列 C 應用程式中會更新音效片段。 音效片段的內容在伺服器檔案中。更新的來源也在伺服器檔案中。
EXEC SQL BEGIN DECLARE SECTION; long hvStorageType; EXEC SQL END DECLARE SECTION; hvStorageType=MMDB_STORAGE_TYPE_EXTERNAL; EXEC SQL UPDATE EMPLOYEE SET SOUND=CONTENT( SOUND, '/employee/newimg/ajones.wav', 'WAVE', :hvStorageType) /*update audio in server file*/ WHERE NAME='Anita Jones';