Atributová data

Editace atributových dat

Správce atributových dat umožňuje kromě dotazování (viz kapitola Atributové dotazy) atributová data modifikovat.

../_images/dbmgr-edit.png

Důležité

Editovat lze atributové data vektorových map pouze z aktualního mapsetu.

Editace záznamů v atributové tabulce

Editace atributových dat z příkazové řádky

Nabízejí se dva moduly:
  • db.execute který umožňuje spustit jakýkoliv SQL příkaz typu UPDATE, ALTER či DELETE

    db.execute sql="update obce_polygon set nespravny = '1' where kod = 569054"
    
  • anebo v.db.update jako frontend pro vektorové mapy

    v.db.update map=obce_polygon column=nespravny value="1" where="kod = 569054"
    

Správce atributových dat umožňuje přidávat do atributové tabulky nové záznamy.

../_images/dbmgr-new-record.png
Přidání nového záznamu do atributové tabulky

Vložení nového záznamu do atributové tabulky z příkazové řádky

db.execute sql="insert into obce_polygon(cat, nazev) values (6253, 'pokus')"

Vybrané záznamy lze z atributové tabulky odstranit.

../_images/wxgui-dbmgr-delete.png

Obrázek 3: Odstranění záznamů z atributové tabulky.

Odstranění záznamů z atributové tabulky z příkazové řádky

db.execute sql="delete from obce_polygon where cat = 6253"

Varování

Při odstranění či přidání záznamů do atributové tabulky dochází k modifikaci pouze popisné složky geoprvků. Např. při odstranění záznamu z atributové tabulky zůstává asociovaná geometrická složka popisu geoprvku ve vektorové mapě zachována.

Numerické atributy mohou být také vypočítány na základě zvolené funkce.

../_images/wxgui-dbmgr-calculate.png

Obrázek 4: Funkce pro výpočet numerických atributů.

Výpočet hodnoty atributu z příkazové řádky

v.to.db map=obce_polygon option=area columns=vymera

Příklad přidání nového atributu s výměrou a její výpočet (ve čtverečních mapových jednotkách).

Přidání nového sloupce do atributové tabulky a výpočet plochy

Field Calculator

Field Calculator je nástroj, který umožňuje sestavit SQL UPDATE příkaz a pomocí něho modifikovat atributová data.

../_images/wx-field-calculator.png

Obrázek 5: Ukázka nástroje Field Calculator.

Výpočet poměru obvodu a výměry plochy pomocí Field Calculatoru

Pokročilé dotazování

Atributové dotazy na geoprvky umožňují dva moduly v.db.select a db.select.

Modul v.db.select

Modul v.db.select umožňuje provádět dotazy pouze nad atributovými daty připojenými k dané vektorové mapě. Je dostupný z menu Database ‣ Query ‣ Query vector attribute data. Pokud není zadána where podmínka, tak modul vypíše všechny záznamy z atributové tabulky.

../_images/v-db-select-0.png

Obrázek 6: Atributový dotaz pomocí modulu v.db.select (zadání vektorové mapy).

../_images/v-db-select-1.png

Obrázek 7: Atributový dotaz pomocí modulu v.db.select (volitelně zadání 'where' podmínky).

Modul db.select

Modul db.select umožňuje provádět SQL dotazy (SELECT) nad libovolnými atributovými daty dostupnými pomocí daného databázového ovladače. SQL dotazy mohou být uloženy v souboru (parametr input) anebo definovány jako parametr sql. Tento modul je dostupný z menu Database ‣ Query ‣ Query any table.

../_images/db-select-0-single.png

Obrázek 8: Atributový dotaz pomocí modulu db.select (zadání SQL dotazu).

../_images/db-select-1-single.png

Obrázek 9: Atributový dotaz pomocí modulu db.select (výsledek SQL dotazu).

Jednoduché atributové dotazu z příkazové řádky

db.select sql="SELECT COUNT(*) FROM obce WHERE ob01/ob91-1 >= 1"
../_images/db-select-0-multi.png

Obrázek 10: Vícenásobný atributový dotaz pomocí modulu db.select (zadání SQL dotazů).

../_images/db-select-1-multi.png

Obrázek 11: Vícenásobný atributový dotaz pomocí modulu db.select (výsledek SQL dotazů).

Poznámka

Pro ostatní SQL příkazy (INSERT, UPDATE, DELETE, ALTER a další) je určen modul db.execute.