Traitement Oracle ORDImage en PL / SQL: Obtention des IMG-00710 et ORA-01031

StackOverflow https://stackoverflow.com/questions/85006

  •  01-07-2019
  •  | 
  •  

Question

J'ai chargé l'image dans un nouvel objet Oracle ORDImage initialisé et je la traite par PL / SQL. Je peux lire ses propriétés, mais je ne peux pas le traiter avec la méthode process ().

vLocalImage ORDImage := ORDImage.init();
...
vLocalImage.source.localdata := PORTAL.wwdoc_admin.get_document_blob_content(pFile);
vLocalImage.setProperties();
...
if vLocalImage.width > lMaxWidth
then
vLocalImage.process('maxScale 534 401');
end if;

Ceci devrait réduire l’image, en conservant les proportions, pour qu’elle ne dépasse pas 534 pixels de large et 401 pixels de haut.

Cependant, j'obtiens la pile d'erreur suivante:

Internal error: ORA-29400: data cartridge error
IMG-00710: unable to write to destination image
ORA-01031: insufficient privileges

Essayer d’autres opérations (comme 'faire pivoter 90') génère les mêmes erreurs.

Était-ce utile?

La solution

Même si la documentation indique qu'il devrait être possible de modifier un ORDImage "sur place", je n'ai pas réussi à le faire fonctionner.

À la place, j'ai créé un nouvel objet ORDImage et utilisé processCopy:

    vNewImage ORDImage;
...
    vLocalImage.processCopy('maxScale 534 401', vNewImage);

Autres conseils

Pouvez-vous s'il vous plaît montrer l'instruction select que vous utilisez pour obtenir l_ordimage? La cause principale de cette erreur semble être si vous n'avez pas "pour la mise à jour". dans votre déclaration choisie, mais je ne peux pas utiliser intermedia pour le moment.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top