[Gvsig_usuarios] Problemas al cargar una CONSULTA de OracleSpatial
en gvSig. Error ORA-01445:cannot select ROWID from, or sample,
a join view without a key-preserved table
Jorge Bellido Diez
jbellido en ikt.es
Lun Mar 9 13:14:50 CET 2009
Hola, .. estoy intentando cargar una vista de oracle que cruza una tabla geográfica con una tabla alfanumérica pero no me funcionan. Me sale el error: ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table
Tengo una tabla con cartografia (TBTEST02) y otra alfanumerica (TBTEST02_DATOS) que contiene la referencia catastral (PROVINCIA,MUNICIPIO,POLIGONO,PARCELA,RECINTO). La clave en tb_parcelas es un campo gid y en la tb_datos son los campos PROVINCIA,MUNICIPIO,POLIGONO,PARCELA,RECINTO. Defino una vista V_TBTEST02 cruzando ambas tablas y presentando los campos.
CREATE VIEW "ADMCARTO"."V_TBTEST02" AS
SELECT ALFA.PROVINCIA,ALFA.MUNICIPIO,ALFA.POLIGONO,ALFA.PARCELA,ALFA.RECINTO,ALFA.DATOTEXTO,ALFA.DATONUMERO,GIS.GID,GIS.GEOMETRY
FROM "ADMCARTO"."TBTEST02_DATOS" ALFA, "ADMCARTO"."TBTEST02" GIS
WHERE ALFA."PROVINCIA" = GIS ."PROVINCIA" and
ALFA."MUNICIPIO" = GIS ."MUNICIPIO" and
ALFA."POLIGONO" = GIS ."POLIGONO" and
ALFA."PARCELA" = GIS ."PARCELA" and
ALFA."RECINTO" = GIS ."RECINTO"
WITH READ ONLY;
Luego añado los respectivos registros a las tablas "MDSYS"."USER_SDO_GEOM_METADATA" y "MDSYS"."ALL_SDO_GEOM_METADATA" tal y como he visto en un correo anterior de esta mismo foro..
INSERT INTO "MDSYS"."USER_SDO_GEOM_METADATA"
("TABLE_NAME","COLUMN_NAME","DIMINFO","SRID")
VALUES('V_TBTEST02','GEOMETRY',"MDSYS"."SDO_DIM_ARRAY"("MDSYS"."SDO_DIM_ELEMENT"('X', 463506.969, 603185.5, .5), "MDSYS"."SDO_DIM_ELEMENT"('Y', 4702558, 4811755, .5)),82337);
INSERT INTO "MDSYS"."ALL_SDO_GEOM_METADATA"
("OWNER","TABLE_NAME","COLUMN_NAME","SRID")
VALUES ('ADMCARTO','V_TBTEST02','GEOMETRY',82337);
Voy a gvSig, me conecto a la BD de Oracle,.. Veo en el listado de tablas mi consulta pero al seleccionarla, me sale el error: ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table
Alguien me podría echar una ayudita,.. Mil gracias. Jorge
Un cordial saludo;
··················································································
Jorge Bellido
Más información sobre la lista de distribución gvSIG_usuarios