Oracle Spatial. Térbeli adatot tartalmazó tábla: Geometry table Legalább 2 oszlopa van: Elsődleges kulcs, SDO_GEOMETRY típusú oszlop.

Hasonló dokumentumok
ADATTÍPUSOK, METAADATOK

ÖNÁLLÓ LABOR VII. SZEMESZTER. Sümeghy Tamás Pál GFHSRE

Önálló laboratórium beszámoló

Vektoros grafikát tároló adatbázisok. Katona Endre Térképi adatbázisok diasorozata alapján

Spatial a gyakorlatban

Bevezetés: az SQL-be

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1

Adatbázisok* tulajdonságai

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

Adatbázis Rendszerek II. 8. Gyakorló környezet

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:

B I T M A N B I v: T M A N

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány)

SQL haladó. Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások

Bevezetés az SQL-be. Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009

Objektum relációs lehetőségek az Oracle-ben. Katona Endre Adatbázis alapú rendszerek diasorozata alapján

Informatikai képzés Információs rendszerek dr. Hajas Csilla (ELTE IK)

Adatbázis Rendszerek II. 3. SQL alapok

Adatbázis Rendszerek II. 5. PLSQL Csomagok 16/1B IT MAN

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT

BEVEZETÉS Az objektum fogalma

Tranzakciókezelés PL/SQL-ben

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

Adatbázisban tárolt kollekciók

Az SQL adatbázisnyelv: DML

Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai

Adatbázis tartalmának módosítása

Adatbázis rendszerek SQL nyomkövetés

MATEMATIKA TANMENET SZAKKÖZÉPISKOLA 9.A, 9.D. OSZTÁLY HETI 4 ÓRA 37 HÉT ÖSSZ: 148 ÓRA

Magas szintű adatmodellek Egyed/kapcsolat modell I.

ADATBÁZIS RENDSZEREK I BEADANDÓ

Adatbázis Rendszerek II. 2. Gyakorló környezet

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány)

Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

ORACLE. SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.

Adatmodellezés. 1. Fogalmi modell

Objektum-relációs adatbázisok. Felhasználói típusok (User-Defined Types) Objektum ID-k Beágyazott táblák (Nested Tables)

SQL DDL-1: táblák és megszorítások

Adatbázis-kezelés. Harmadik előadás

Programozás alapjai. 5. előadás

17. előadás: Vektorok a térben

Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte

Adatbáziskezelı-szerver SQL. Relációs adatbázis-kezelık. Relációs adatszerkezet. Házi feladat

Adatbázis használat I. 5. gyakorlat

Adatbázisok. 9. gyakorlat SQL: SELECT október október 26. Adatbázisok 1 / 14

GEIAL Kovács László. GEIAL Kovács László

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1

SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai

Adatbázisok elmélete 10. előadás

SQL DDL-2 (aktív elemek) triggerek

Adatbázisok II. Jánosi-Rancz Katalin Tünde 327A

Adatbázis rendszerek 2. előadás. Relációs algebra

Java II. I A Java programozási nyelv alapelemei

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

SULINOVA PROGRAMTANTERVÉHEZ ILLESZKEDŐ TANMENET 9. ÉVFOLYAM SZÁMÁRA

PHP-MySQL. Adatbázisok gyakorlat

Matematika osztályozó vizsga témakörei 9. évfolyam II. félév:

IBM WebSphere Adapters 7. változat 5. alváltozat. IBM WebSphere Adapter for Oracle E-Business Suite felhasználói kézikönyv 7. változat 5.

5. téma XML DB. Az adatkezelés és XML kapcsolata. Miért fontos az XML használata az adatbázis kezelésben?

Adatbázisrendszerek. adatbázisokban. Objektumorientált és objektum-relációs adatbázisok április 24.

SQL parancsok feldolgozása

Adatbázis rendszerek 2. előadás. Relációs algebra

Adatbázis-kezelés, információs-rendszerek

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) );

I. VEKTOROK, MÁTRIXOK

Együttes hozzárendelés

Területi primitívek: Zárt görbék által határolt területek (pl. kör, ellipszis, poligon) b) Minden belső pont kirajzolásával (kitöltött)

MATEMATIKA TANMENET SZAKKÖZÉPISKOLA. 9. Nyelvi előkészítő osztály

MATEMATIKA TANMENET. 9. osztály. 4 óra/hét. Budapest, szeptember

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis

Adatbázisok-1 előadás Előadó: dr. Hajas Csilla

Az indexelés újdonságai Oracle Database 12c R1 és 12c R2

MATEMATIKA TANMENET 9.B OSZTÁLY FIZIKA TAGOZAT HETI 6 ÓRA, ÖSSZESEN 216 ÓRA

SZAKKÖZÉPISKOLA ÉRETTSÉGI VIZSGRA FELKÉSZÍTŐ KK/12. ÉVFOLYAM

A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja:

Eseményvezérelt alkalmazások fejlesztése II 12. előadás. Objektumrelációs adatkezelés (ADO.NET) Giachetta Roberto

Adatbázis rendszerek tervezése

Telek-Alakítási feladatok napjainkban. Poligon(ok) egyedi (fel)darabolása Pr-SoftWare

WEBFEJLESZTÉS 2. ADATBÁZIS-KEZELÉS, OSZTÁLYOK

Java és web programozás

1. Ábrázolja az f(x)= x-4 függvényt a [ 2;10 ] intervallumon! (2 pont) 2. Írja fel az alábbi lineáris függvény grafikonjának egyenletét!

2016/2017. Matematika 9.Kny

Adatbázisok I. Jánosi-Rancz Katalin Tünde 327A 1-1

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE) október október 22. Adatbázisok 1 / 14

Adatbázisok. 2. gyakorlat SQL november november 12. Adatbázisok 1 / 31

Adatbázisok, térképek, információs rendszerek. Elek István

A szürke háttérrel jelölt fejezet/alfejezet szövege a CD-mellékleten található. A CD-melléklet használata. 1. Elméleti áttekintés 1

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

RELÁCIÓS ADATBÁZISSÉMÁK. Egyed-kapcsolat modellről átírás

Fraktálok. Klasszikus fraktálpéldák I. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék

Adatbázisok elmélete 9. előadás

Programozási technikák Pál László. Sapientia EMTE, Csíkszereda, 2009/2010

Java és web programozás

Átírás:

Oracle Spatial Az Oracle adatbázis-kezelő rendszer Oracle Spatial (Oracle Locator) nevű kiegészítő modulja támogatja a térbeli adatok kezelését. Térbeli adatot tartalmazó tábla: Geometry table Legalább 2 oszlopa van: Elsődleges kulcs, SDO_GEOMETRY típusú oszlop. Megjegyzések: SDO =Spatial Data Option 3D és 4D koordináták is megengedettek, de a függvények többsége csak 2D-re működik.

SDO_GEOMETRY definíciója CREATE TYPE SDO_GEOMETRY AS OBJECT ( SDO_GTYPE NUMBER, SDO_SRID NUMBER, SDO_POINT SDO_POINT_TYPE, SDO_ELEM_INFO SDO_ELEM_INFO_ARRAY, SDO_ORDINATES SDO_ORDINATE_ARRAY );

SDO_GEOMETRY (folytatás) CREATE TYPE sdo_point_type AS OBJECT ( X NUMBER, ); Y NUMBER, Z NUMBER CREATE TYPE sdo_elem_info_array AS VARRAY (1048576) of NUMBER; CREATE TYPE sdo_ordinate_array AS VARRAY (1048576) of NUMBER;

SDO_GTYPE Alakzat típusa: 4 jegy dltt formátumban: d = dimenzió (2, 3, 4) l = 0 ha nem LRS alakzat. (LRS = linear referencing system = lineáris címzési rendszer. l = 3 vagy 4 adja meg, hogy melyik dimenzió tartalmazza a lineáris mérőszámot.) tt = alakzattípus (00...07)

SDO_GTYPE (folytatás) tt = alakzattípus (00...07): 00 = ismeretlen 01 = pont 02 = vonallánc, amely íves szakaszokat is tartalmazhat 03 = poligon, esetleg lyukakkal (először a külső, azután a belső határvonalat kell felvinni.) 04 = kollekció: tetszőleges elemek halmaza. 05 = ponthalmaz. 06 = vonallánc halmaz. 07 = poligonhalmaz (diszjunkt poligonok).

SDO_GTYPE (példa) Példa: SDO_GTYPE = 2003 = 2D poligon: d = dimenzió = 2. l = 0 ha nem LRS alakzat. tt = 03 = poligon. Megjegyzések: Egy tábla egy oszlopában csak azonos dimenziójú alakzatok lehetnek. Az egyes komponseket visszaadó függvények: Get_Dims, Get_LRS_Dim, Get_Gtype.

SDO_SRID Koordinátarendszer (Spatial Reference System) azonosítója: az SDO_COORD_REF_SYS tábla SRID oszlopára hivatkozik. Egy tábla egy oszlopában csak azonos SDO_SRID értékek szerepelhetnek. SDO_SRID értéke NULL is lehet (nem definiálunk koordinátarendszert).

SDO_POINT Pont alakzat megadása, ha az SDO_ELEM_INFO és SDO_ORDINATES attribútumok NULL értékűek. Egyébként az SDO_POINT értéke közömbös. CREATE TYPE sdo_point_type AS OBJECT ( X NUMBER, Y NUMBER, Z NUMBER );

SDO_ELEM_INFO A koordináták értelmezésére szolgál. Típusa: CREATE TYPE sdo_elem_info_array AS VARRAY (1048576) of NUMBER; Számhármasokból áll, minden számhármas egy alkotóelem leírását tartalmazza: SDO_STARTING_OFFSET: az alkotóelemhez tartozó első koordináta sorszáma az SDO_ORDINATE tömbben (1-től számozva). SDO_ETYPE: az alkotóelem típusa (lásd alább). SDO_INTERPRETATION. Ha SDO_ETYPE összetett elem, akkor a hármasok száma, ha nem, akkor a koordináták értelmezése (lásd alább).

ETYPE INTERP. Jelentés 1 1 Pont 1 n Ponthalmaz 2 1 Vonallánc egyenesszakaszokkal 2 2 Vonallánc körívekkel 1003 1 Külső poligon 2003 1 Belső poligon 1003 2 Külső poligon körívekkel 2003 2 Belső poligon körívekkel 1003 3 Külső téglalap 2003 3 Belső téglalap 1003 4 Külső kör 2003 4 Belső kör 4 n Vegyes vonallánc (egyenesek, körívek) 1005 n Külső vegyes poligon (egyenesek, körívek) 2005 n Belső vegyes poligon (egyenesek, körívek)

SDO_ORDINATES Koordináták felsorolása, nem tartalmazhat NULL értéket. Típusa: CREATE TYPE sdo_ordinate_array AS VARRAY (1048576) of NUMBER; Szögpontok max. száma: 2D alakzatban 1048576 / 2, 3D alakzatban 1048576 / 3, 4D alakzatban 1048576 / 4.

Szabályok Poligon megadása: első pont = utolsó pont. Példa: 4 szögpontú poligon: (X 1, Y 1, X 2, Y 2, X 3, Y 3, X 4, Y 4, X 1, Y 1 ) Külső poligon: óramutató járásával szemben körüljárva. Példa: háromszög: (1,1, 8,1, 1,5, 1,1) Belső poligon: óramutató járása szerint körüljárva. Példa: háromszög: (1,1, 1,5, 8,1, 1,1) Körív megadása: kezdőpont, belső pont, végpont. Körívlánc megadása: csatlakozó pontot nem ismételjük. Példa: (1,1, 1,5, 5,8, 10,10, 12,10) Kör megadása: három kerületi ponttal. Téglalap megadása: bal alsó és jobb felső sarok koordinátáival. Példa: (1,2, 10,20)

1. példa: pont SDO_GTYPE = 2001. SDO_SRID = NULL. SDO_POINT = (10,20). SDO_ELEM_INFO = NULL. SDO_ORDINATES = NULL. 2D, nem LRS, pont

2. példa: pont felvétele SQL-ben CREATE TABLE Város ( kód NUMBER PRIMARY KEY, név VARCHAR2(20), hely SDO_GEOMETRY ); INSERT INTO Város VALUES( 152,'Pécs', SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(1235, 4178, NULL), NULL, NULL));

3. példa: téglalap SDO_GTYPE = 2003 2D, nem LRS, poligon SDO_SRID = NULL. SDO_POINT = NULL. SDO_ELEM_INFO = (1,1003,3) Külső téglalap SDO_ORDINATES = (1,1, 5,7) Bal alsó, jobb felső

4. példa: poligon lyukkal

4. példa (folytatás) SDO_GTYPE = 2003 SDO_SRID = NULL. SDO_POINT = NULL. 2D, nem LRS, poligon SDO_ELEM_INFO = (1,1003,1, 19,2003,1) Megjegyzés: 1003: külső poligon, 2003: belső poligon, ez utóbbi a 19. pozíción kezdődik, első pontja (7,5). SDO_ORDINATES = (2,4, 4,3, 10,3, 13,5, 13,9, 11,13, 5,13, 2,11, 2,4, 7,5, 7,10, 10,10, 10,5, 7,5).

5. példa: vegyes vonallánc

5. példa (folytatás) SDO_GTYPE = 2002. SDO_SRID = NULL. SDO_POINT = NULL. 2D vonallánc SDO_ELEM_INFO = (1,4,2, 1,2,1, 3,2,2) Megjegyzések: (1,4,2): Vegyes vonallánc 2 komponenssel, amelyek a következők: (1,2,1): Vonallánc egy vagy több egyenesszakasszal, amely a következő pointerig (3) tart. (3,2,2): Vonallánc egy vagy több körívvel, amely a tömb végéig tart. A csatlakozó pontot (10,14) nem ismételjük. SDO_ORDINATES = (10,10, 10,14, 6,10, 14,10).

6. példa: poligon felvétele SQL-ben CREATE TABLE Telek ( helyrajziszám CHAR(10) PRIMARY KEY, terület INTEGER, geom SDO_GEOMETRY ); INSERT INTO Telek VALUES (123, 1200, SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1,1003,1), SDO_ORDINATE_ARRAY (2,4, 10,3, 13,5, 13,9, 5,13, 2,4)) );

Index létrehozása CREATE INDEX geomind ON Telek(geom) INDEXTYPE IS MDSYS.SPATIAL_INDEX;

Oracle Spatial összefoglalás Egyetlen univerzális objektumtípus (SDO_GEOMETRY). Egy oszlop vegyesen tartalmazhat különféle elemtípusokat. Körívek speciális kezelése. A nehézkes megadási mód konverziós eszközökkel, PL/SQL programmodulokkal és grafikus szerkesztéssel könnyíthető. További témák: metódusok (térbeli műveletek) lekérdezések