IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

comment résoudre l'erreur ORA-22992


Sujet :

Oracle

  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 7
    Points : 4
    Points
    4
    Par défaut comment résoudre l'erreur ORA-22992
    voila j'utilise la version 9.2.0.1.0 (9i) et forms builder 9.0.4.0.19(10g developper)
    voila on a un projet qui consiste a concevoir et implémenter une base de données distribuées et multimédia, les données varchar2 et date et number …etc on arrive à les visualiser d’une façon transparente (en utilisant les database link) mais les données de type lobs on on arrive pas. Voici notre démarche on a deux bases de données (oral1 et oral2) sur deux sites différents, on a créer deux datalink entre ces deux bases link_2 dans la base 1 et link_1 dans la base 2 comme suite
    base 1
    create database link link_2
    connect to sofian2 identified by sosso2
    using ‘oral2’;
    base 2
    create database link link_1
    connect to sofian1 identified by sosso
    using ‘oral1’;
    les liens quand a crée ont fonctionné normalement parce que les données à part les blobs sont accessibles.
    Et dans la base1 (oral1) on a créer la table qui contiendra nos images après avoir créer les repertoires
    A partir de l’utilisateur systeme
    CREATE directory blobdir AS 'c:\temp\';
    GRANT READ ON directory blobdir to sofian1;
    On crée une table qui contiendra nos images

    CREATE TABLE t_blob (id number, image blob);
    et on a crée un synonyme de la table t_blob dans la base 2 (oral2) « photo »
    Ensuite on crée notre package

    CREATE OR REPLACE PACKAGE sql_blob IS

    -- Procédure servant à ajouter un BLOB à notre table.
    -- p_id correspond à l'id
    -- p_name correspond au nom du fichier à inserer.
    PROCEDURE add_blob(p_id NUMBER, p_name VARCHAR2);

    END sql_blob;
    /
    CREATE OR REPLACE PACKAGE BODY sql_blob IS

    PROCEDURE add_blob(p_id NUMBER, p_name VARCHAR2) IS
    v_blob BLOB;
    v_bfile BFILE;
    BEGIN
    -- On insére la ligne avec un blob vide dont on récupère le pointeur
    INSERT INTO t_blob
    VALUES
    (p_id, empty_blob())
    RETURNING image INTO v_blob;
    -- On déclare un pointeur vers notre fichier
    v_bfile := bfilename(directory => 'BLOBDIR', filename => p_name);
    -- On ouvre ce fichier
    dbms_lob.fileopen(v_bfile);
    -- On rempli l'emplacement du BLOB vide dans la table avec le contenu de notre fichier
    dbms_lob.loadfromfile(v_blob, v_bfile, dbms_lob.getlength(v_bfile));
    -- On ferme le fichier
    dbms_lob.fileclose(v_bfile);
    END;
    END sql_blob;
    /

    et çaa fonctionné très bien on a pu charger les images dans oral1 (base de données1)avec l’instruction suivant
    exec sql_blob.add_blob(1,'photo_1.GIF');

    et on arrive à les visualiser dans forms builder en se connectant dans la base où se trouve les images (oral1) mais si on se connecte dans oral2(base de données 2) on arrive pas à les visualiser et forms nous affiche les erreurs suivantes
    FRM-40505 erreur oracle exéction impossible de l’interrogation
    Cause : processing error encountered. The table associated with the current block of then form might not existe or your usenime might not have authority to perform the specified action on the table
    et dans le menu par defaut (disply erreur) il affiche ORA-22992(impossible d'utiliser les indicateurs d'emplacementlob sélectionnées dans des tables distantes) donc comment visualiser les images à partir d'une autre base de données distante?

    Sachant que le synonyme « photo » fonctionne très bien et les utilisateur on tous le rôle DBA .
    Donc on est vraiment bloqué et une solution de votre part serai vraiment la bien venue. Merci à l’avance .

  2. #2
    Membre expert
    Avatar de bouyao
    Inscrit en
    Janvier 2005
    Messages
    1 778
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 778
    Points : 3 033
    Points
    3 033
    Par défaut
    Bonjour,
    Il faut utiliser

  3. #3
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    Merci de penser aux balises CODE et QUOTE cf les régles du forum

Discussions similaires

  1. Comment résoudre l'Erreur SQL0802
    Par Clotilde dans le forum DB2
    Réponses: 9
    Dernier message: 29/12/2006, 15h25
  2. comment résoudre les erreurs de généricité?
    Par broumbroum dans le forum Langage
    Réponses: 4
    Dernier message: 31/10/2006, 11h59
  3. [VB.Net] Comment résoudre l'erreur si suppression dans la table maitre ?
    Par Alexandre` dans le forum Accès aux données
    Réponses: 1
    Dernier message: 26/08/2006, 15h51
  4. [Oracle 10g] Comment résoudre une erreur ORA-3000
    Par DoRiane dans le forum Oracle
    Réponses: 3
    Dernier message: 10/04/2006, 09h44
  5. [ODP][TAF]Comment résoudre l'erreur TNS-12152 ?
    Par Laurent Dardenne dans le forum Oracle
    Réponses: 2
    Dernier message: 21/04/2005, 19h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo