La fonction UDF Content peut avoir différents formats selon son utilisation. Ces formats sont les suivants :
Format 1 : Extraction d'un objet vers la mémoire tampon du poste client ou vers un fichier client :
Content( handle, /* descripteur objet */ );
Format 2 : Extraction d'un segment d'objet vers la mémoire tampon du poste client ou vers un fichier client :
Content( handle, /* descripteur objet */ offset, /* adresse relative de début d'extraction (décalage) */ size /* nombre d'octets à extraire */ );
Format 3 : Extraction d'un objet vers un fichier du serveur :
Content( handle, /* descripteur objet */ target_file, /* nom du fichier du serveur */ overwrite /* 0=pas de remplacement du fichier cible s'il existe */ /* 1=remplacement du fichier cible */ );
En outre, la fonction UDF Content comprend les formats suivants réservés aux objets image :
Format 4 : Extraction d'un objet image vers la mémoire tampon ou un fichier avec conversion de format :
Content( handle, /* descripteur objet */ target format /* format cible */ );
Format 5 : Extraction d'un objet vers un fichier du serveur avec conversion de format :
Content( handle, /* descripteur objet */ target_file, /* nom du fichier du serveur */ overwrite, /* 0=pas de remplacement du fichier cible s'il existe */ /* 1=remplacement du fichier cible */ target format /* format cible */ );
Format 6 : Extraction d'un objet vers la mémoire tampon ou un fichier avec conversion de format et modifications supplémentaires :
Content( handle, /* descripteur objet */ target format, /* format cible */ conversion_options /* options de conversion */ );
Format 7 : Extraction d'un objet vers un fichier du serveur avec conversion de format et modifications supplémentaires :
Content( handle, /* descripteur objet */ target_file, /* nom du fichier du serveur */ overwrite, /* 0=pas de remplacement du fichier cible s'il existe */ /* 1=remplacement du fichier cible */ target format, /* format cible */ conversion_options /* options de conversion */ );
Par exemple, les instructions suivantes permettent d'extraire une image de la table Employés vers un fichier du serveur. (Cette opération correspond au format 3.)
EXEC SQL SELECT CONTENT( /* fonction UDF d'extraction */ PICTURE, /* descripteur image */ '/Employés/images/adupont.bmp', /* fichier cible */ 1) /* remplacement du fichier cible */ FROM EMPLOYEE WHERE NAME = 'Anne Dupont';
Les instructions ci-après, incluses dans un programme d'application en langage C, permettent l'extraction d'une image de la table Employés vers un fichier du serveur. Le format de l'image est converti à l'extraction. (Cette opération correspond au format 5.)
EXEC SQL BEGIN DECLARE SECTION; char hvImg_fname[255]; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT CONTENT( /* fonction UDF d'extraction */ PICTURE, /* descripteur image */ '/Employés/images/adupont.bmp', /* fichier cible */ 1, /* remplacement du fichier cible */ 'GIF') /* format cible */ INTO :hvImg_fname FROM EMPLOYEE WHERE NAME = 'Anne Dupont';