Our PostGIS training course is aimed at those responsible for managing databases of geographic information. Attendees will learn how to install and configure PostgreSQL/PostGIS, how to import geographic information through a variety of methods including through QGIS, how to manage access to their data through roles and permissions and how to use PostGIS' many database functions to perform complex on-the-fly geoprocessing.
Although prior knowledge of structured query language (SQL) is recommended, a quick-start guide to SQL is included in the course content.
All of our training courses combine presentations with practical exercises, allowing delegates to practice the techniques and concepts being taught. Delegates are supplied with a course manual containing all exercises and presentation materials.
Delegates are encouraged to bring any datasets they may find useful during Open Sessions, held at the end of each day where tutors aim to solve any relevant GIS queries or problems.
Lutra Consulting specialise in running customised training courses for organisations. That means that you get to choose the course content that best meets your requirements and we'll send one of our knowledgeable and experienced tutors to you, with everything required to run your course, anywhere in the UK or Ireland.
Please see our main training page for more information about how we run our courses.
Our PostGIS training course is usually taken as a two day course and covers the topics listed below in green (day 1) and blue (day 2). Those interested in writing their own database functions or automating database tasks often add our PostGIS for Developers training course as a third day.
Those looking for a tailored PostGIS training course for multiple staff may pick and choose content from below and from our other courses. Please contact training@lutraconsulting.co.uk to book a course or to discuss your requirements in detail.
Topic | Level | |
---|---|---|
An introduction to PostgreSQL and PostGIS | Intermediate | |
The advantages of geodatabases | ||
Installing PostgreSQL and PostGIS for Windows | Intermediate | |
Administering PostGIS with pgAdminIII | Intermediate | |
Creating new spatial databases | Intermediate | |
Creating databases from templates | ||
The structure of a PostGIS database | Intermediate | |
Tables | ||
Schemas | ||
Importing existing data into PostGIS | Intermediate | |
The PostGIS Shapefile Import/Export Manager | ||
Viewing and editing PostGIS layers in a GIS environment | Intermediate | |
Creating a PostGIS connection in QGIS | ||
Viewing and editing PostGIS layers in QGIS | ||
Filtering loaded features using an SQL WHERE clause | ||
The anatomy of a PostGIS layer | Intermediate | |
Supported spatial data types | Intermediate | |
Exporting data from PostGIS | Intermediate | |
The PostGIS Shapefile Import/Export Manager | ||
Exporting features directly from QGIS | ||
Limitations of exporting to Shapefile | ||
Making your PostGIS layers portable with SpatiaLite | ||
Creating new PostGIS layers | Intermediate | |
Deleting PostGIS layers | Intermediate | |
Working efficiently with spatial indices | Intermediate | |
How to create a spatial index | ||
Where to use indices | ||
VACUUM ANALYZE | ||
Backing up and restoring your PostGIS data | Intermediate | |
Controlling database access | Intermediate | |
Users, groups and permissions | ||
Access granularity | ||
Limiting access based on IP address | ||
Performance tips: Getting the most out of PostGIS | Intermediate | |
PostGIS data types | Advanced | |
Numeric types | ||
Character types | ||
The binary type | ||
Date / time types | ||
The boolean type | ||
Arrays | ||
Comparison with Shapefile types | ||
Getting started with SQL | Advanced | |
Entering SQL commands | ||
Creating a table and importing data | ||
SELECT | ||
LIMIT | ||
ORDER BY | ||
DELETE | ||
INSERT | ||
UPDATE | ||
Intermediate SQL operations | Advanced | |
The DISTINCT clause | ||
Aliasing | ||
Querying multiple tables using Joins | ||
PostGIS functions | Advanced | |
What is a function? | ||
Spatial measurement functions | ||
Spatial relationship functions | ||
Geometry processing functions | ||
Performing and visualising advanced queries | Advanced | |
Visualising query results in QGIS | ||
The DB Manager plugin | ||
Exercise: Advanced Spatial Queries | Advanced | |
PostGIS Raster / WKTRaster | Advanced | |
How is raster data stored? | ||
Available functions | ||
Querying raster values | ||
PostGIS raster performance tips | ||
Raster table constraints and catalogs | ||
Exercise: Attaching raster values to vector points (point inspection) | Advanced | |
Alternative methods of loading data | Advanced | |
ogr2ogr | ||
Exercise: Importing Ordnance Survey (OS) MasterMap into PostGIS | Advanced | |
Finding the shortest route using pgRouting | Advanced | |
What can pgRouting do? | ||
Installing pgRouting under Windows | ||
Preparing network data for pgRouting | ||
Exercise: Using pgRouting with OS Integrated Transport Network (ITN) | Advanced | |
Using Views to save complex queries for re-use | Advanced | |
Coordinate system transforms (reprojection) | Advanced | |
Writing pl/pgSQL functions | Developer | |
See our PostGIS for Developers training course | ||
Automating SQL tasks using Python | Developer | |
See our PostGIS for Developers training course |