p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Membre du Club Avatar de H.ile
    Profil pro
    Architecte de système d'information
    Inscrit en
    janvier 2008
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Macao

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : janvier 2008
    Messages : 117
    Points : 45
    Points
    45

    Par défaut [10g] ORA-00904: "A_TRONCO"."GEOMETRY"."GET_DIMS" : identificateur non valide

    Aloha

    Lorsque j'exécute la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select  c.GEOMETRY.Get_Dims() FROM A_TRONCO c;
    J'ai en retour pour chacun des enregistrements de ma table A_TRONCO le nombre de dimension des objets (2 ou 3 ou null si il y a un problème...).

    Souhaitant construire un script PL/SQL à vocation de correction des informations de 3D présentes dans le champ descriptif de la géométrie de mes objets j'ai testé ceci :

    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
    Declare
      Cursor tableName IS
            SELECT table_name
            FROM user_tables
            WHERE table_name like 'A_TRONCO';     
      --	   
      Type t_CurTyp IS Ref Cursor;
      crsData       t_CurTyp;
      dim    Varchar2(32676);
      l_sql         Varchar2(32676);
      --  
    Begin
      FOR tabs IN tableName
      Loop
        l_sql := 'Select '|| tabs.table_name||'.GEOMETRY.Get_Dims()
                   From '||tabs.table_name;
    		Open crsData FOR l_sql ;
    		Loop
           Fetch crsData INTO dim;
           Exit When crsData%NOTFOUND;
    			 dbms_output.put_line(dim);
    		End loop; 
        Close crsData;    
      End loop;	
    End;
    Pour l'instant mon curseur ne s'occupe que d'une table, mais dans le futur, il y aura X tables.
    J'espérais pouvoir parcourir chacune des tables, puis pour chacune, interroger les objets et renvoyer le nombre de dimension.
    Ensuite j'aurai inscrit un test (si 2 alors, si 3 alors, si null alors).
    Mais là j'ai une erreur :
    Oracle Database Error: ORA-00904: "A_TRONCO"."GEOMETRY"."GET_DIMS" : identificateur non valide
    ORA-06512: à ligne 17
    Quelqu'un a-t'il une idée ?

    D'avance, merci,

  2. #2
    Expert Confirmé Sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    octobre 2007
    Messages
    4 945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : octobre 2007
    Messages : 4 945
    Points : 9 810
    Points
    9 810

    Par défaut

    Essayez
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    l_sql := 'Select c.GEOMETRY.Get_Dims() '
                   ||' From '||tabs.table_name||' c' ;

Discussions similaires

  1. erreur ora-00904 identificateur non valide
    Par zed80 dans le forum Oracle
    Réponses: 2
    Dernier message: 05/01/2010, 13h23
  2. Ora-00904 Identificateur non valide ?
    Par DBA_OCP dans le forum Oracle
    Réponses: 1
    Dernier message: 05/06/2009, 16h03
  3. ORA-00904 : identificateur non valide
    Par hotcold dans le forum SQL
    Réponses: 10
    Dernier message: 01/03/2009, 19h20
  4. Réponses: 2
    Dernier message: 26/02/2008, 09h16
  5. Réponses: 5
    Dernier message: 13/08/2007, 13h02

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