#1 Thu 08 December 2011 15:36
- Pierre
- DesCartesPourUnMondeMeilleur
- Date d'inscription: 22 Sep 2005
- Messages: 1643
[Oracle11X] problème création vue
Aloha
Mon select fonctionne bien, et je souhaitais avoir toujours sous la main le résultat. Donc une vue le semblait bien.
J'obtiens cependant une erreur "ORA-04063 view has error".
A la lecture du code ci-dessous, quelqu'un a-t'il une idée de ce que fais mal ? J'ai enlevé la géom, pensant que peut-être celà pouvait jouer, nenni.
D'avance, merci,
Code:
CREATE OR REPLACE FORCE VIEW "PIERRE.GEOREZO"."LOGEMENT" ( --GEOMETRY, APIX_DATE, "TYPE RROPRIO", "NB_LGT", "Catégorie", "OCCUPATION_MJ3", CODE_PARC, GROUPE_DATE, COPRO, "NUMERO BATIMENT" ) AS SELECT --SDO_GEOM.SDO_CENTROID (P.GEOMETRY, 1) AS GEOMETRY, TO_DATE ('01/09/2011') "APIX_CDATE", S1."type de propriétaire" AS "TYPE RROPRIO", S1."NB_LGT", S1."Catégorie", S1."OCCUPATION_MJ3", S1.CODE_PARC, S1.GROUPE_DATE, S1.COPRO, S1."NUMERO BATIMENT" FROM PCI_PARC P INNER JOIN (SELECT D.CCOAFF, D.DCAPEC AS "Catégorie", D.DCETLC AS "Coeff d'entretien", COUNT (D.INVAR) AS NB_LGT, MJ2_BATI.CCOCOM || '000' || LPAD (LTRIM (MJ2_BATI.CCOSEC), 2, '0') || LPAD (MJ2_BATI.DNUPLA, 4, 0) AS CODE_PARC, -- MJ2_LOCAL.JDATAT AS "Année de mutation", MJ2_LOCAL.JANNAT AS "Année de construction", CASE WHEN MJ2_LOCAL.JANNAT BETWEEN 1949 AND 1974 THEN 'ENTRE 1949 et 1974' WHEN MJ2_LOCAL.JANNAT BETWEEN 1975 AND 1989 THEN 'ENTRE 1975 et 1989' WHEN MJ2_LOCAL.JANNAT BETWEEN 1990 AND 2003 THEN 'ENTRE 1990 et 2003' WHEN MJ2_LOCAL.JANNAT > 2003 THEN 'APRES 2003' ELSE 'DATE PEU FIABLE' END AS GROUPE_DATE, MJ2_LOCAL.CCONLC AS "Nature du local", CASE MJ2_LOCAL.GPDL WHEN '1' THEN 'Propriété divisée en lots' ELSE 'Propriété entière' END AS "COPRO", MJ2_LOCAL.DNATLC, MJ2_BATI.DNUBAT AS "NUMERO BATIMENT", CASE MJ2_LOCAL.DNATLC WHEN 'D' THEN 'Domicile principal occupé par le propriétaire' WHEN 'L' THEN 'Loué' WHEN 'P' THEN 'Occupé par le propriétaire' WHEN 'V' THEN 'Vacant' ELSE DNATLC END AS OCCUPATION_MJ3, CASE WHEN MJ2_PROPRIO.CCOGRM = '0 ' THEN '1' ELSE MJ2_PROPRIO.GTOPER END AS "type de propriétaire", MJ2_PROPRIO.CCOGRM AS "code personne morale" FROM MJ2_DESCPEV D INNER JOIN ( ( MJ2_BATI INNER JOIN MJ2_LOCAL ON MJ2_BATI.INVAR = MJ2_LOCAL.INVAR) INNER JOIN MJ2_PROPRIO ON (MJ2_LOCAL.DNUPRO = MJ2_PROPRIO.DNUPRO AND MJ2_BATI.CCOCOM = MJ2_PROPRIO.CCOCOM)) ON (D.INVAR = MJ2_BATI.INVAR) WHERE DNUPEV = 001 AND D.CCOAFF = 'H' AND MJ2_PROPRIO.DNULP = 01 GROUP BY D.CCOAFF, D.DCAPEC, D.DCETLC, MJ2_BATI.CCOCOM || '000' || LPAD (LTRIM (MJ2_BATI.CCOSEC), 2, '0') || LPAD (MJ2_BATI.DNUPLA, 4, 0), MJ2_LOCAL.JANNAT, MJ2_BATI.DNUBAT, -- MJ2_LOCAL.JDATAT, MJ2_LOCAL.CCONLC, CASE MJ2_LOCAL.GPDL WHEN '1' THEN 'Propriété divisée en lots' ELSE 'Propriété entière' END, MJ2_LOCAL.DNATLC, MJ2_LOCAL.GPDL, CASE MJ2_LOCAL.DNATLC WHEN 'D' THEN 'Domicile principal occupé par le propriétaire' WHEN 'L' THEN 'Loué' WHEN 'P' THEN 'Occupé par le propriétaire' WHEN 'V' THEN 'Vacant' ELSE DNATLC END, CASE WHEN MJ2_PROPRIO.CCOGRM = '0 ' THEN '1' ELSE MJ2_PROPRIO.GTOPER END, MJ2_PROPRIO.CCOGRM) S1 ON S1.CODE_PARC = P.IDENT WITH READ ONLY
art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.
Hors ligne