<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de-CH">
	<id>https://giswiki.ch/index.php?action=history&amp;feed=atom&amp;title=PostGIS_Einf%C3%BChrung_II</id>
	<title>PostGIS Einführung II - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://giswiki.ch/index.php?action=history&amp;feed=atom&amp;title=PostGIS_Einf%C3%BChrung_II"/>
	<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=PostGIS_Einf%C3%BChrung_II&amp;action=history"/>
	<updated>2026-04-28T03:57:07Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Geometa Lab OST</subtitle>
	<generator>MediaWiki 1.39.10</generator>
	<entry>
		<id>https://giswiki.ch/index.php?title=PostGIS_Einf%C3%BChrung_II&amp;diff=70781&amp;oldid=prev</id>
		<title>Move page script: Move page script verschob die Seite Broken/PostGIS Einf\xfchrung II nach PostGIS Einführung II</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=PostGIS_Einf%C3%BChrung_II&amp;diff=70781&amp;oldid=prev"/>
		<updated>2024-11-15T08:22:25Z</updated>

		<summary type="html">&lt;p&gt;Move page script verschob die Seite &lt;a href=&quot;/Broken/PostGIS_Einf%5Cxfchrung_II&quot; class=&quot;mw-redirect&quot; title=&quot;Broken/PostGIS Einf\xfchrung II&quot;&gt;Broken/PostGIS Einf\xfchrung II&lt;/a&gt; nach &lt;a href=&quot;/PostGIS_Einf%C3%BChrung_II&quot; title=&quot;PostGIS Einführung II&quot;&gt;PostGIS Einführung II&lt;/a&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de-CH&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 15. November 2024, 08:22 Uhr&lt;/td&gt;
				&lt;/tr&gt;
&lt;!-- diff cache key giswiki:diff::1.12:old-46971:rev-70781 --&gt;
&lt;/table&gt;</summary>
		<author><name>Move page script</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=PostGIS_Einf%C3%BChrung_II&amp;diff=46971&amp;oldid=prev</id>
		<title>Stefan: Die Seite wurde geleert.</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=PostGIS_Einf%C3%BChrung_II&amp;diff=46971&amp;oldid=prev"/>
		<updated>2013-10-17T21:30:42Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde geleert.&lt;/p&gt;
&lt;a href=&quot;https://giswiki.ch/index.php?title=PostGIS_Einf%C3%BChrung_II&amp;amp;diff=46971&amp;amp;oldid=46970&quot;&gt;Änderungen zeigen&lt;/a&gt;</summary>
		<author><name>Stefan</name></author>
	</entry>
	<entry>
		<id>https://giswiki.ch/index.php?title=PostGIS_Einf%C3%BChrung_II&amp;diff=46970&amp;oldid=prev</id>
		<title>Stefan: Die Seite wurde neu angelegt: „GISpunkt-Seminar &#039;&#039;&#039;&quot;PostGIS Einführung II&quot;&#039;&#039;&#039; (Kürzel Sem_PostGIS_FF).    Nächste Durchführung: Fr. 24. Januar 2014  Siehe auch: * [[Kurs PostGIS Einführung…“</title>
		<link rel="alternate" type="text/html" href="https://giswiki.ch/index.php?title=PostGIS_Einf%C3%BChrung_II&amp;diff=46970&amp;oldid=prev"/>
		<updated>2013-10-17T21:30:10Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „GISpunkt-Seminar &amp;#039;&amp;#039;&amp;#039;&amp;quot;PostGIS Einführung II&amp;quot;&amp;#039;&amp;#039;&amp;#039; (Kürzel Sem_PostGIS_FF).    Nächste Durchführung: Fr. 24. Januar 2014  Siehe auch: * [[Kurs PostGIS Einführung…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;GISpunkt-Seminar &amp;#039;&amp;#039;&amp;#039;&amp;quot;PostGIS Einführung II&amp;quot;&amp;#039;&amp;#039;&amp;#039; (Kürzel Sem_PostGIS_FF).&lt;br /&gt;
&lt;br /&gt;
  Nächste Durchführung: Fr. 24. Januar 2014&lt;br /&gt;
&lt;br /&gt;
Siehe auch:&lt;br /&gt;
* [[Kurs PostGIS Einführung I]] und [[GIS-Kurse]] allgemein.&lt;br /&gt;
* [[PostGIS]] und [[PostgreSQL]].&lt;br /&gt;
&lt;br /&gt;
== Programm ==&lt;br /&gt;
&lt;br /&gt;
* 09:00-09:15 Einführung, Vorstellung. (sep. Gruppe (A) diejenigen, die installieren, (B) die schon installiert haben) (SK)&lt;br /&gt;
* 09:15-10:00 (A): Installation inkl. Daten einlesen. (SK mit Helfer)&lt;br /&gt;
* 09:15-10:00 (B): Teil 1. Daten einlesen, Teil 2. &amp;quot;PostgreSQL Playing Cards&amp;quot; spielen. (AN+SK)&lt;br /&gt;
* 10:00-10:15 Überblick PostGIS 2.0, inkl. Extensions, Datentyp Geography. (SK)&lt;br /&gt;
* 10:15-10:30 SQL-Shell in QGIS. (AN)&lt;br /&gt;
* 10:30-11:00 PAUSE&lt;br /&gt;
* 11:00-11:45 &amp;quot;Spatial SQL Advanced&amp;quot; mit PostgreSQL: DE-9IM, Views (mit IDs), Trigger (Nachführung Fläche, Constraints im Leitungskataster), Rules (Updatable Views), Konsistenz-Checks. (AN)&lt;br /&gt;
* 11:45-12:30 Neue Vektorgeometrie-Funktionen in PostGIS 2.0 mit Übung. (SK)&lt;br /&gt;
* 12:30-13:30 MITTAGESSEN&lt;br /&gt;
* 13:30-14:00 Übung komplexe räumliche SQL-Abfragen. (AN)&lt;br /&gt;
* 14:00-15:00 PostGIS Raster mit Übung. (AN)&lt;br /&gt;
* 15:00-15:30 PostGIS 3D und PostGIS Topologie. (SK)&lt;br /&gt;
* 15:30-16:15 Ev. Performance-Optimierung, PostGIS-spezifischer Server-Setup (Konfiguration, Tablespaces, Clustering, Read-only-Optimierung). (SK)&lt;br /&gt;
* 16:15-16:30 Ausblick (u.a. Routing). (SK)&lt;br /&gt;
&lt;br /&gt;
Vorkenntisse:&lt;br /&gt;
* Kurs &amp;quot;Einführung in PostGIS/PostgreSQL&amp;quot;, bzw. Kenntnisse von SQL sowie Spatial SQL-Funktionen&lt;br /&gt;
* PostgreSQL Tools (psql, pgadminIII), PostGIS-Tools (shp2pgsql)&lt;br /&gt;
* Kenntnisse eines GIS zur Visualisierung und zum Editieren von Geodaten&lt;br /&gt;
&lt;br /&gt;
Nicht behandelt:&lt;br /&gt;
* PostgreSQL Optimierung&lt;br /&gt;
* Lineare Referenzierung&lt;br /&gt;
* Routing&lt;br /&gt;
* Replikation&lt;br /&gt;
* Integration mit ArcGIS SDE&lt;br /&gt;
* etc.&lt;br /&gt;
&lt;br /&gt;
== Unterlagen/Übungen ==&lt;br /&gt;
&lt;br /&gt;
Siehe auch Materialien im Kursordner.&lt;br /&gt;
&lt;br /&gt;
Online-Doku.:&lt;br /&gt;
* [http://www.postgresonline.com/downloads/special_feature/postgresql90_cheatsheet_A4.pdf Cheat Sheet &amp;quot;PostgreSQL 9.0&amp;quot;] (postgresonline.com)&lt;br /&gt;
* [http://www.postgis.us/downloads/postgis20_cheatsheet.pdf  Cheat Sheet &amp;quot;PostGIS 2.0&amp;quot;] (postgis.us)&lt;br /&gt;
* [http://www.postgis.us/downloads/postgis20_topology_cheatsheet.pdf Cheat Sheet &amp;quot;PostGIS 2.0 Topology&amp;quot;] (postgis.us)&lt;br /&gt;
&lt;br /&gt;
Literatur:&lt;br /&gt;
* &amp;quot;PostGIS in Action&amp;quot;, Obe und Hsu, Manning. [http://www.postgis.us/page_buy_book Online order]&lt;br /&gt;
* http://wiki.hsr.ch/Datenbanken/DatenbankLiteratur&lt;br /&gt;
&lt;br /&gt;
Support/Firmen: &lt;br /&gt;
* [http://wiki.hsr.ch/Datenbanken/PostgreSQLReferenzen Referenzen von PostreSQL-Installationen]&lt;br /&gt;
* [http://www.postgres-support.com postgres-support.com Schweiz/Deutschland/Österreich]&lt;br /&gt;
&lt;br /&gt;
Software:&lt;br /&gt;
* Siehe [[#Installation]].&lt;br /&gt;
&lt;br /&gt;
Daten:&lt;br /&gt;
* Siehe [[#Installation]].&lt;br /&gt;
&lt;br /&gt;
== Tipps und Tricks ==&lt;br /&gt;
&lt;br /&gt;
Weitere:&lt;br /&gt;
* [[PostGIS - Tipps und Tricks]]&lt;br /&gt;
* [[PostgreSQL - Tipps und Tricks]]&lt;br /&gt;
* [[PostGIS-Beispiele]]&lt;br /&gt;
&lt;br /&gt;
Restore... (pg_restore):&lt;br /&gt;
* &amp;quot;File Option&amp;quot;: Dateiendungen für Dumps sind &amp;quot;.backup&amp;quot;; wechseln Sie zu &amp;quot;All Files (*.*)&amp;quot;, wenn der Dump einen anderen Namen hat. Dumps erkennt man daran... &lt;br /&gt;
* &amp;quot;Restore Options #1&amp;quot; folgende Optionen, damit die Owner/Privileges Einstellungen ignoriert werden: &amp;quot;Don&amp;#039;t save: Owner, Privilege, Tablespace&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Trigger-Funktion (Datenbank Uster):&lt;br /&gt;
&lt;br /&gt;
  CREATE OR REPLACE FUNCTION test.insert_update_test_trigger_function()&lt;br /&gt;
    RETURNS trigger AS&lt;br /&gt;
  $BODY$&lt;br /&gt;
    DECLARE&lt;br /&gt;
    myrec RECORD;&lt;br /&gt;
  BEGIN&lt;br /&gt;
    NEW.flaeche := ST_Area(NEW.the_geom);&lt;br /&gt;
    NEW.umfang := ST_Perimeter(NEW.the_geom);&lt;br /&gt;
    SELECT array_to_string(array_agg(nz.zonenbez_gemeinde),&amp;#039;; &amp;#039;) &lt;br /&gt;
    AS zonen into myrec FROM raumplanung.nutzungszonen nz WHERE ST_Intersects(NEW.the_geom,nz.the_geom);&lt;br /&gt;
    NEW.zonen := myrec.zonen;&lt;br /&gt;
    RETURN NEW;&lt;br /&gt;
  END;&lt;br /&gt;
  $BODY$&lt;br /&gt;
  LANGUAGE plpgsql VOLATILE&lt;br /&gt;
  COST 100;&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
Installation of PostgreSQL 9.1 (production, 32bit) with PostGIS 1.5 (production), PostGIS 2.0 Experimental (32bit) and QGIS:&lt;br /&gt;
* Step 0: Overview of installation of PostgreSQL 9.1.x and PostGIS 1.5 [http://geomatica.como.polimi.it/corsi/sw_gis/postgis_qgis_inst.pdf Instructions (PDF)] &lt;br /&gt;
* Step 1: Installation of PostgreSQL 9.1.x ([http://www.enterprisedb.com/products-services-training/pgdownload#windows Download PostgreSQL for Windows 32bit])&lt;br /&gt;
** NOTE FOR ALL USERS! Don&amp;#039;t choose &amp;#039;64bit Build&amp;#039; - even if 64bit-CPU available (because of PostGIS 2.0 Experimental which is 32bit-only)&lt;br /&gt;
** Make a note of the password. If PostgreSQL is used on your own laptop (localhost) and for educational purposes, we uses user &amp;#039;postgres&amp;#039; with password &amp;#039;postgres&amp;#039;&lt;br /&gt;
* Step 2: PostGIS 1.5 (production, 32bit)&lt;br /&gt;
** Use Stackbuilder from PostgreSQL postprocessing step (NOTE: Internet access is needed here)&lt;br /&gt;
* Step 3: Installation of PostGIS 2.0 (experimental) ([http://www.postgis.org/download/windows/experimental.php Windows 32bit], see weblink &amp;quot;For PostgreSQL 9.1 (compiled against PostgreSQL 9.1.0...&amp;quot;)&lt;br /&gt;
** Make a copy of the whole &amp;lt;&amp;lt;POSTGRE_DIR&amp;gt;&amp;gt;\bin to a backup directory since some PostGIS 1.5 executables will be replaced by PostGIS 2.0.&lt;br /&gt;
** Unzip ZIP-file of PostGIS 2.0 to an temporary installation directory (=&amp;gt; &amp;lt;&amp;lt;POSTGIS_INSTALL_DIR&amp;gt;&amp;gt; = &amp;#039;postgis-pg91-binaries-2.0.0svn/&amp;#039;).&lt;br /&gt;
** Follow instructions of the README file:&lt;br /&gt;
*** Make a copy of makepostgisdb_using_extensions.bat and makepostgisdb.bat (includes raster), and edit POSTGIS_INSTALL_DIR to adapt following variables: PGPASSWORD, THEDB, PGINSTALL (see listing below).&lt;br /&gt;
*** The only difference in these edits is one environment variable: for makepostgisdb_using_extensions.bat its &amp;#039;THEDB=postgis20_extension&amp;#039; and for makepostgisdb.bat its &amp;#039;THEDB=postgis20&amp;#039;.&lt;br /&gt;
*** Open a CMD-Shell as administrator (NOTE FOR WINDOWS USERS! Choose cmd.exe from Start menu but run cmd.exe with right click on it &amp;#039;Run as administrator&amp;#039;!)&lt;br /&gt;
*** In CMD-Shell run makepostgisdb_using_extensions.bat and makepostgisdb.bat&lt;br /&gt;
* Step 4: ActivePerl (optional for certain courses, pls. ask course leader!)&lt;br /&gt;
** The database (Uster) needs pl/perl scripts inside PostsgreSQL db. We install ActivePerl ([http://www.activestate.com/activeperl/downloads Windows-Version]).&lt;br /&gt;
* Step 5: Installation of QGIS (Quantum GIS) Stable Version and Trunk Version&lt;br /&gt;
** There are two different installers. We use OSGeo4W ([http://download.osgeo.org/osgeo4w/osgeo4w-setup.exe osgeo4w-setup.exe]) (NOTE: Internet access is needed here)&lt;br /&gt;
*** When asked about the installation/runtime directory path, choose default (e.g. &amp;#039;C:\OSGeo4W&amp;#039;) on Windows. Usually you would install programs under &amp;#039;C:\Program Files (x86)&amp;#039;. But there is evidence that some tools could be bothered by spaces in paths. &lt;br /&gt;
*** Choose &amp;quot;Advanced Installation&amp;quot; (use the newest version of each software =&amp;gt; mostly the first click in the installation tree)&lt;br /&gt;
*** Category „Commandline Utilities“: setup: OSGeo4W Installer/Updater&lt;br /&gt;
*** Category „Desktop“: qgis, qgis-dev (NOTE: &amp;#039;qgis-dev&amp;#039; means &amp;quot;Trunk&amp;quot;-Version)&lt;br /&gt;
*** Category „Libs“: psycopg2, pyqwt5-qt4, qt4-devel&lt;br /&gt;
** NOTE: This installation includes by default Python (2.5.2)&lt;br /&gt;
* Finish: Restart system (in order to restore environment like paths to libraries).&lt;br /&gt;
&lt;br /&gt;
File &amp;#039;makepostgisdb_using_extensions.bat&amp;#039;:&lt;br /&gt;
  REM this is an example of how to create a new db and spatially enable it using CREATE EXTENSION&lt;br /&gt;
  set PGPORT=5432&lt;br /&gt;
  set PGHOST=localhost&lt;br /&gt;
  set PGUSER=postgres&lt;br /&gt;
  set PGPASSWORD=postgres&lt;br /&gt;
  set THEDB=postgis20_extension&lt;br /&gt;
  set PGINSTALL=C:\Program Files (x86)\PostgreSQL\9.1&lt;br /&gt;
  set PGADMIN=%PGINSTALL%\pgAdmin III&lt;br /&gt;
  set PGBIN=%PGINSTALL%\bin\&lt;br /&gt;
  set PGLIB=%PGINSTALL%\lib\&lt;br /&gt;
  set POSTGISVER=2.0&lt;br /&gt;
  xcopy bin\*.* &amp;quot;%PGBIN%&amp;quot;&lt;br /&gt;
  xcopy /I /S bin\postgisgui\* &amp;quot;%PGBIN%\postgisgui&amp;quot;&lt;br /&gt;
  xcopy /I plugins.d &amp;quot;%PGADMIN%\plugins.d&amp;quot;&lt;br /&gt;
  xcopy lib\*.* &amp;quot;%PGLIB%&amp;quot;&lt;br /&gt;
  xcopy share\extension\*.* &amp;quot;%PGINSTALL%\share\extension&amp;quot;&lt;br /&gt;
  &amp;quot;%PGBIN%\psql&amp;quot;  -c &amp;quot;CREATE DATABASE %THEDB%&amp;quot;&lt;br /&gt;
  &amp;quot;%PGBIN%\psql&amp;quot;  -d &amp;quot;%THEDB%&amp;quot; -c &amp;quot;CREATE EXTENSION postgis;&amp;quot;&lt;br /&gt;
  &amp;quot;%PGBIN%\psql&amp;quot;  -d &amp;quot;%THEDB%&amp;quot; -c &amp;quot;CREATE EXTENSION postgis_topology;&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  REM Uncomment the below line if this is a template database&lt;br /&gt;
  &amp;quot;%PGBIN%\psql&amp;quot; -d &amp;quot;%THEDB%&amp;quot; -c &amp;quot;UPDATE pg_database SET datistemplate = true WHERE datname = &amp;#039;%THEDB%&amp;#039;;GRANT ALL ON geometry_columns TO PUBLIC; GRANT ALL ON spatial_ref_sys TO PUBLIC&amp;quot;&lt;br /&gt;
  &lt;br /&gt;
  pause&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Creating new database &amp;#039;Uster&amp;#039;:&lt;br /&gt;
* Preparation steps:&lt;br /&gt;
** Close all postgres clients, if there are any open (like pgAdmin3, plsql, QGIS).&lt;br /&gt;
** Cleanup database (if needed): If there is already a database &amp;#039;uster&amp;#039; drop it!&lt;br /&gt;
* Start pgAdmin3 as dbadmin &lt;br /&gt;
* Create new database: &lt;br /&gt;
** Name &amp;#039;uster15&amp;#039;, encoding: UTF-8, template: postgis15 (or postgis)&lt;br /&gt;
* Select database &amp;#039;uster15&amp;#039;&lt;br /&gt;
** Activate extensions (right click) &amp;quot;New Object...&amp;quot; &amp;gt; &amp;quot;New Extension...&amp;quot;: &lt;br /&gt;
** Choose extensions: adminpack, ltree and plperl.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Importing data into database &amp;#039;uster&amp;#039;:&lt;br /&gt;
* Start pgAdmin3 (as dbadmin) &lt;br /&gt;
* Choose (right click) &amp;quot;Restore...&amp;quot; &lt;br /&gt;
** Choose „uster.dump“ (All filese *.*)&lt;br /&gt;
** Change „Restore Options #1“ with following 3 options in order to ignore Owner/Privileges: &amp;quot;Don&amp;#039;t save: Owner, Privilege, Tablespace&amp;quot;.&lt;br /&gt;
* Import runs some minutes.&lt;br /&gt;
&lt;br /&gt;
Importing another demo database:&lt;br /&gt;
* See British Columbia Data &amp;#039;bc_data&amp;#039; at [[PostGIS-Beispiele]].&lt;br /&gt;
&lt;br /&gt;
== Selbststudium ==&lt;br /&gt;
&lt;br /&gt;
* tbd.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Weiterbildung]] [[Kategorie:PostGIS]] [[Kategorie:PostgreSQL]]&lt;/div&gt;</summary>
		<author><name>Stefan</name></author>
	</entry>
</feed>