Sem PostGIS Roger: Unterschied zwischen den Versionen
| Zeile 67: | Zeile 67: | ||
pause | pause | ||
Das zweite Batchfile lädt übergebene Shapefile in die Datenbank: | Das zweite Batchfile lädt das so übergebene Shapefile in die Datenbank: | ||
echo ============================== | echo ============================== | ||
| Zeile 95: | Zeile 95: | ||
echo ------------------- | echo ------------------- | ||
%psql_exe% -h %server% -d %dbname% -U %dbuser% -f %1.sql | %psql_exe% -h %server% -d %dbname% -U %dbuser% -f %1.sql | ||
Unter Verwendung der UNIX-Pipes können Konvertierung und Laden in die Datenbank auch in einem Schritt durchgeführt werden[http://www.terrestris.de/cms1/templates/terrestris/downloads/Praxishandbuch_WebGIS_Freie_Software.pdf]. | |||
==Queries== | ==Queries== | ||
Version vom 30. Oktober 2007, 23:15 Uhr
Wiki-Seite zum Selbststudium im GISpunkt-Seminar PostGIS.
Daten: Amtliche Vermessung Kanton Basel-Stadt
Verwendete Daten
Als Übungsdaten werden zwei Datensätze der amtlichen Vermessung des Kantons Basel-Stadt verwendet. Der eine Datensatz enthält die Rohrleitungen (Topic), der zweite die Bodenbedeckung (Topic), aus der im Laufe der Übung die Tankanlagen (Bodenbedeckungsart 17) extrahiert werden.
Die Datensätze liegen als Shapefiles Bodenbedeckung_merged.shp und Rohrleitungen.shp vor.
Metadaten-Record
Die Angabe beim DC-Element modified bezieht sich auf das Datum des Datenbezugs.
Rohrleitung
dc:title = Rohrleitung
dct:abstract = Bestandteil des Datenmodells des Bundes. Beschreibt die geometrische Form und
Lage der Rohrleitungen, die von übergeordneter Bedeutung für die
Eigentumsverhältnisse sind.
dc:format = INTERLIS, Shapefile
dct:spatial = name=Kanton Basel-Stadt; northlimit=47.60200; southlimit==47.51858;
eastlimit=7.69527; westlimit=7.55281
dct:modified = 2007-10-19
dc:publisher = Grundbuch- und Vermessungsamt Basel-Stadt
dc:language = de
dc:rights = Abgabebedingungen: Berechtigter Interessennachweis. Die Daten können aufgrund
einer Benützungsbewilligung bezogen werden. Entsprechende Bezugsformulare sind
auf www.gva.bs.ch erhältlich. Für die Verwendung der Daten gelten die allgemeinen
Bedingungen für die Benützung von Geodaten des Grundbuch- und Vermessungsamtes
Basel-Stadt.
Tankanlagen (Art der Bodenbedeckung)
dc:title = Bodenbedeckung
dct:abstract = Bestandteil des Datenmodells des Bundes. Beschreibt die geometrische Form und Lage
der Flächenarten mit einer Mindestfläche von in der Regel 100 m2 (Gebäude, befestigt,
humusiert, bestockt, Gewässer, vegetationslos, etc.).
dc:format = INTERLIS, Shapefile
dct:spatial = name=Kanton Basel-Stadt; northlimit=47.60200; southlimit==47.51858;
eastlimit=7.69527; westlimit=7.55281
dct:modified = 2007-10-19
dc:publisher = Grundbuch- und Vermessungsamt Basel-Stadt
dc:language = de
dc:rights = Abgabebedingungen: Die Daten können aufgrund einer Benützungsbewilligung bezogen
werden. Entsprechende Bezugsformulare sind auf www.gva.bs.ch erhältlich. Für die
Verwendung der Daten gelten die allgemeinen Bedingungen für die Benützung von
Geodaten des Grundbuch- und Vermessungsamtes Basel-Stadt.
Laden des Datensatzes
Die vorliegenden Shapefiles Bodenbedeckung_merged.shp und Rohrleitungen.shp wurden mit shp2pgsql.exe in .sql-Files konvertiert, diese wiederum mit psql.exe in die PostGIS-Datenbank geladen.
Die Shapefiles wurden mit zwei Batchfiles in die Datenbank importiert: Das erste Batchfile übergibt die zu importierenden Files als Parameter an das zweite Batchfile:
echo ============================== echo Shapefile in PostGIS-DB laden echo ============================== echo. echo Übergibt Shapefilenamen (ohne echo Endung) an Hauptbatchfile. echo. set shp2pg_main="_shp2pg_main.bat" call %shp2pg_main% Bodenbedeckung_merged call %shp2pg_main% Rohrleitungen pause
Das zweite Batchfile lädt das so übergebene Shapefile in die Datenbank:
echo ============================== echo Shapefile in PostGIS-DB laden echo ============================== echo. echo Erwartet Shapefilename (ohne echo Endung) als Parameter (%1). echo. set shp2pgsql_exe="C:\Programme\PostgreSQL\8.2\bin\shp2pgsql.exe" set psql_exe="C:\Programme\PostgreSQL\8.2\bin\psql.exe" set srid="21781" set schema="public" set server="localhost" set dbname="postgis-seminar" set dbuser="postgres" echo -------------------- echo SQL-File erstellen echo -------------------- %shp2pgsql_exe% -s %srid% -I %1 %schema%.%1 > %1.sql echo ------------------- echo Daten in DB laden echo ------------------- %psql_exe% -h %server% -d %dbname% -U %dbuser% -f %1.sql
Unter Verwendung der UNIX-Pipes können Konvertierung und Laden in die Datenbank auch in einem Schritt durchgeführt werden[1].
Queries
...