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

SQL Oracle Discussion :

copier une photo d'un repertoire vers un autre


Sujet :

SQL Oracle

  1. ###raw>post.musername###
    Expert éminent sénior
    \\XEVX\C:\rep'

    je n'ai jamais vu de syntaxe de ce type
      0  0

  2. #42
    Nouveau membre du Club
    bah depuis un bon moment , je vous dit que je voudrais copier un fichierdans un repertoire distant ,
    XEXV , c'est le nom de la machine
    sinon comment dois je l'ecrire ?

  3. ###raw>post.musername###
    Expert éminent sénior
    Lorsque vous partagez un disque, par exemple D:\, vous donnez un nom au partage (par exemple D$) et c'est ce nom que vous utilisez:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    \\machine\D$\...
    En tous cas, cela n'a plus de rapport direct avec UTL_FILE.FCOPY().
    Vous devriez maintenant vous en sortir de votre coté.
      0  0

  4. ###raw>post.musername###
    Nouveau membre du Club
    j'ai trouvé cette procedure dans votre page faq oracle;
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    CREATE OR REPLACE PROCEDURE Insert_document2
         (
          PC$Image IN VARCHAR2  
         ) IS
        L$Blob BLOB;
       L$Bfile BFILE;
       LN$Len NUMBER := dbms_lob.lobmaxsize;
       LN$Num NUMBER ;
       LN$src_off PLS_INTEGER := 1 ;
       LN$dst_off PLS_INTEGER := 1 ;
       LN$Langctx NUMBER := dbms_lob.default_lang_ctx ;
       LN$Warn NUMBER;
       BEGIN
         -- Création des objets temporaires --
         dbms_lob.createtemporary( L$Blob, TRUE ) ;  
     
         -- Chargement de l'image dans la colonne BLOB --
         If PC$Image is not null Then
            L$Bfile := BFILENAME('PHOTO', PC$Image );
            dbms_lob.fileopen(L$Bfile, dbms_lob.file_readonly);
            dbms_lob.loadblobfromfile(
                                      L$Blob,       -- BLOB de destination
                                      L$Bfile,      -- Pointeur de fichier en entrée
                                      LN$Len,       -- Nombre d'octets à lire
                                      LN$src_off,   -- Position source de départ
                                      LN$dst_off);  -- Position destination de départ
            dbms_lob.fileclose(L$Bfile);
         End if ;  
     
         -- Enregistrement --
         update personnes set stockage_photo= L$Blob where id_personne like '1010%';
     
         -- Libération des objets temporaires --
         dbms_lob.freetemporary( L$Blob ) ;    
       END;
       /

    ca a bien marché lorsque j'ai defini le directory "local" , une fois j'ai essayé de le faire sur un repertoire distant , ca déconne, et pourtant tous les droits sont attribués a tous le monde , et je peux acceder à la photo = lien correct , vraiment là je seche..
    voila l'erreur
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ORA-22288: Úchec de l'opÚration FILEOPEN sur le fichier ou le LOB
    Acc┐refus
    ORA-06512: Ó "SYS.DBMS_LOB", ligne 523
    ORA-06512: Ó "UNICAMPUSFLAM.INSERT_DOCUMENT2", ligne 20
    ORA-06512: Ó ligne 1

    le script de cration du lien :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    CREATE DIRECTORY PHOTO AS '\\VPX\photos';

    je suis desolée mais vraiment la ca me depasse..
      0  0