Jak na tabulky v databázi s geometrickými daty ve více sloupcích a s různými SRID?

16. 12. 2013
  • Další
  • ArcGIS 10.1
  • ArcGIS 10.2
  • ArcGIS 10.3

U některých tabulek s prostorovými daty v databázi Oracle (a nejen v této) lze narazit na problém s duplicitou sloupců s geometrií nebo na rozdílná SRID jednotlivých záznamů v rámci jedné tabulky. Pro zobrazení záznamů z tabulek, které uvedená kritéria nesplňují, lze ale snadno použít databázové pohledy. Duplicitu sloupců s geometrií lze řešit vytvořením pohledu, který obsahuje pouze jeden ze sloupců. Např. pro ukázkovou tabulku cola_markets_2shape vytvoříme pohled cola_markets_shape2_vw, kde vybereme pouze sloupec shape2.

CREATE VIEW cola_markets_shape2_vw AS SELECT MKT_ID,NAME,SHAPE2 FROM cola_markets_2shape;

Obdobně lze postupovat i v případě, kdy tabulka obsahuje záznamy s různými souřadnicovými systémy – tak, že v pohledu vyfiltrujeme záznamy s jedním z obsažených SRID.
Pro tabulku cola_markets_2spref, obsahující kromě geometrie SRID 4258 i jiné, lze následujícím způsobem do pohledu vyfiltrovat pouze ty, kde SRID=4258.

CREATE VIEW cola_markets_sr4258_vw AS SELECT MKT_ID,NAME,SHAPE FROM cola_markets_2spref  WHERE t.shape.SDO_SRID=4258;

Výsledné pohledy lze v aplikaci ArcMap již bez problému zobrazit. Obdobně lze řešit stejnou úlohu i na jiných databázových platformách a pro jiné geometrické datové typy.