|
|
(Není zobrazeno 85 mezilehlých verzí od stejného uživatele.) |
Řádek 1: |
Řádek 1: |
| {{Upravit}} | | {{freegiswiki|SpatiaLite}} |
| [[Image:sqlite-logo.png|right]]
| |
| '''[http://www.sqlite.org/ SQLite]''' je relační databázový systém obsažený v relativně malé knihovně napsané v C. Je vyvíjen D. Richardem Hippem a šířen pod licencí public domain.
| |
| | |
| Na rozdíl od databází založených na principu klient-server, kde je databázový server spuštěn jako samostatný proces, je SQLite pouze malá knihovna, která se přilinkuje k aplikaci a pomocí jednoduchého rozhraní ji lze začít využívat. Každá databáze je uložena v samostatném souboru .dbm (Database Manager), kde se data ukládají za použití jednoduchého primárního klíče do stejně velkých bloků a používá hashovacích technik pro rychlý přístup k datům při vyhledávání podle klíče.
| |
| | |
| V SQLite je implementován téměř celý standard [http://cs.wikipedia.org/wiki/SQL SQL-92].
| |
| | |
| Databázi SQLite lze použít například v programovacích jazycích C, C++, Delphi, PHP, Java, Python, Perl, Tcl aj.
| |
| | |
| <div align="right">
| |
| Převzato z české [http://cs.wikipedia.org/wiki/SQLite wikipedie].
| |
| </div>
| |
| | |
| == SpatiaLite ==
| |
| [[Image:spatialite-logo.png|150px|right]]
| |
| Prostorové rozšíření [http://www.gaia-gis.it/spatialite/ SpatiaLite] umožňuje ukládat v databázi SQLite geoprostorová data - podobně jako např. [[PostGIS]] pro databázový systém [[PostgreSQL]].
| |
| | |
| === Založení databáze ===
| |
| | |
| Návod platí pro server [http://josef.fsv.cvut.cz josef].
| |
| | |
| Databáze se vytvoří automaticky po spuštění interpretu SpatiaLite. V tomto případě se databáze uloží do souboru <tt>gisdb.sqlite</tt>. Pokud ale zůstane databáze po opuštění interpretu prázdná, soubor se nevytvoří.
| |
| | |
| spatialite gisdb.sqlite
| |
| | |
| Příkazem
| |
| | |
| .read /usr/local/share/spatialite/init_spatialite-2.3.sql ASCII
| |
| | |
| nahrajeme metadatové tabulky <tt>geometry_columns</tt> a <tt>spatial_ref_sys</tt>. Nyní je databáze připravena pro práci s geoprostorovými daty.
| |
| | |
| spatialite> .tables
| |
| geom_cols_ref_sys geometry_columns spatial_ref_sys
| |
| spatialite> .exit
| |
| | |
| == Import dat ==
| |
| | |
| Pro tento účel můžeme vyexportovat data např. z [[Cvičná databáze PostGIS|cvičné databáze PostGIS]].
| |
| | |
| pgsql2shp pgis_student gis1.obce
| |
| | |
| Data naimportujeme např.
| |
| | |
| spatialite_tool -i -shp obce -d gisdb.sqlite -t obce -c UTF-8 -s 2065 -g the_geom
| |
| | |
| anebo přímo z interpretu SpatiaLite
| |
| | |
| spatialite> .loadshp ./obce obce UTF-8 2065 the_geom
| |
| | |
| Ukázka jednoduchého dotazu
| |
| | |
| spatialite> SELECT nazev,Area(the_geom)/1e6 AS plocha FROM obce ORDER BY plocha DESC LIMIT 5;
| |
| Praha|496.077202708984
| |
| Hradiště|328.857295861328
| |
| Brdy|259.774799202647
| |
| Libavá|238.31301229512
| |
| Brno|230.03067746875
| |
| | |
| == Virtuální tabulky ==
| |
| | |
| Příklad přípojení dat ve formátu Shapefile jako virtuální tabulku.
| |
| | |
| CREATE VIRTUAL TABLE obce USING VirtualShape(obce, UTF-8, 2065);
| |
| | |
| {{GFOSS}}
| |