イメージ、オーディオ、およびビデオ・エクステンダー 管理およびプログラミングの手引き

注釈の更新

注釈は、それ自体で更新することもできますし、それに対応するオブジェクトを更新するときに更新することもできます。

注釈をそれ自体で更新するときには、Comment UDF を使用します。 この場合、更新される注釈の内容と、そのオブジェクトのハンドルをもつ表の列を指定します。 その内容をサーバーに伝送するには、ホスト変数を使用します。 たとえば、次のステートメントでは、hvRemarks というホスト変数を宣言し、それを使用して、保管されたビデオ・クリップの既存の注釈を更新します。

EXEC SQL BEGIN DECLARE SECTION;
  struct {
         short len;
         char data [40];
  }hvRemarks;
EXEC SQL END DECLARE SECTION;
 
/* Get the old comment */
 
EXEC SQL SELECT COMMENT(VIDEO)
     INTO :hvRemarks
     FROM EMPLOYEE
     WHERE NAME = 'Anita Jones';
 
/* Append to old comment */
 
hvRemarks.data[Remarks.len]='\0';
hvRemarks.len=strlen(hvRemarks.data);
strcat (hvRemarks.data, "Updated video");
EXEC SQL UPDATE EMPLOYEE
     SET VIDEO=COMMENT(VIDEO, :hvRemarks)
     WHERE NAME = 'Anita Jones';

注釈の更新を、それに対応するオブジェクトを更新するときに行うには、Replace UDF を使用します。 たとえば、次のステートメントでは、サーバー・ファイルに保管されたビデオ・クリップを更新するとともに、それに対応する注釈も更新します。

EXEC SQL BEGIN DECLARE SECTION;
  long hvStorageType;
EXEC SQL END DECLARE SECTION;
 
hvStorageType=MMDB_STORAGE_TYPE_EXTERNAL;
 
EXEC SQL UPDATE EMPLOYEE
   SET VIDEO=REPLACE(
                 VIDEO,
                 '/employee/newvid/ajones.mpg',
                 'MPEG1',
                 :hvStorageType,
                 'Anita''s new video')        /*updated comment*/
   WHERE NAME='Anita Jones';


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]