Académique Documents
Professionnel Documents
Culture Documents
Chaieb Ali-2020/2021-2GTG 1
Qu’est-ce que PostgreSQL?
Des extensions et outils sont disponibles pour compléter le moteur, en particulier PostGis qui permet la
gestion de données spatiales dans une base PostgreSQL (gestion des géométries et des systèmes de
coordonnées).
Chaieb Ali-2020/2021-2GTG 2
Architecture de base de PostgreSQL
Pour finir avec les notions de base, PostgreSQL est une application client/serveur. Le serveur gère les fichiers
de la base de données, accepte les connexions des clients, et effectue les opérations demandées par les clients
(requêtes…). Le client peut prendre de nombreuses formes. Pour administrer PostgreSQL vous disposez
d’une interface graphique, pgAdmin3. Pour travailler sur les données (affichage, mise en forme, mise à jour)
vous pourrez le faire avec QGis. Chaieb Ali-2020/2021-2GTG 4
PostGIS est une extension du système de base de données relationnelle objet PostgreSQL qui permet de
stocker des objets SIG (systèmes d'information géographique) dans la base de données. PostGIS inclut
la prise en charge des index spatiaux R-Tree basés sur GiST et des fonctions d'analyse et de traitement
des objets SIG.
Si vous installé les modules extensions/postgis, vous pouvez transformer une base de données en une base de
données spatiale en utilisant le mécanisme EXTENSION.
L'extension postgis de base comprend la géométrie, la géographie, spatial_ref_sys et toutes les fonctions et
commentaires. Le raster et la topologie sont fournis en tant qu'extension distincte.
Exécutez l'extrait de code SQL suivant dans la base de données que vous souhaitez activer spatialement :
Libres Propriétaires
Chaieb Ali-2020/2021-2GTG 6
Les objets SIG pris en charge par PostGIS sont un sur-ensemble de la norme "Simple Features" définie par
l'OpenGIS Consortium (OGC). PostGIS prend en charge tous les objets et fonctions spécifiés dans la
spécification OGC "Simple Features for SQL" (SFS).
La spécification OpenGIS définit deux manières standard d'exprimer des objets spatiaux : la forme Well-
Known Text (WKT) et la forme Well-Known Binary (WKB). WKT et WKB incluent tous deux des
informations sur le type de l'objet et les coordonnées qui forment l'objet.
Chaieb Ali-2020/2021-2GTG 7
Exemples de représentations textuelles (WKT) des objets spatiaux des entités :
POINT(0 0)
POINT Z (0 0 0)
POINT ZM (0 0 0 0)
LINESTRING (0 0,1 1,1 2)
POLYGONE((0 0,4 0,4 4,0 4,0 0),(1 1, 2 1, 2 2, 1 2,1 1))
MULTIPOINT((0 0),(1 2))
MULTIPOINT Z ((0 0 0),(1 2 3))
CHAÎNE MULTILIGNE((0 0,1 1,1 2),(2 3,3 2,5 4))
MULTIPOLYGONE(((0 0,4 0,4 4,0 4,0 0),(1 1,2 1,2 2,1 2,1 1)), ((-1 -1,-1 -2, -2 -2,-2 -1,-1 -1)))
GEOMETRYCOLLECTION(POINT(2 3),LINESTRING(2 3,3 4))
La spécification OpenGIS exige également que le format de stockage interne des objets spatiaux
inclue un identifiant de système de référencement spatial (SRID). Le SRID est requis lors de la
création d'objets spatiaux à insérer dans la base de données.
Chaieb Ali-2020/2021-2GTG 8
Qu’est-ce que SRID ?
Chaieb Ali-2020/2021-2GTG 9
Chaieb Ali-2020/2021-2GTG 10
Chaieb Ali-2020/2021-2GTG 11
PostGIS ajoute la prise en charge des objets géographiques à la base de données relationnelle objet
PostgreSQL. En effet, PostGIS "active spatialement" le serveur PostgreSQL, lui permettant d'être utilisé
comme base de données spatiale principale pour les systèmes d'information géographique (SIG), un peu
comme le SDE d'ESRI ou l'extension spatiale d'Oracle. PostGIS suit la "Spécification des fonctionnalités
simples pour SQL" d'OpenGIS
Chaieb Ali-2020/2021-2GTG 12
CREATE TABLE PUBLIC.DELEGATION
(code int4 primary key,
nom_délégation varchar(50),
géométrie geometry(POINT,32632));
Chaieb Ali-2020/2021-2GTG 13
Afficher les paramètres de la projection
Chaieb Ali-2020/2021-2GTG 14
Insertion des délégations avec leurs codes, noms et positions
Chaieb Ali-2020/2021-2GTG 15
Afficher les dimensions des points insérées
SELECT nom_délégation,
st_geometrytype(géométrie) ,
st_ndims(géométrie),
st_srid(géométrie) FROM delegation;
Chaieb Ali-2020/2021-2GTG 16
Conversion et lecture des coordonnées du format hexadécimal aux format texte
Chaieb Ali-2020/2021-2GTG 17
Création de deux champs pour la lecture des valeurs de X et Y
SELECT DELEGATION,
ST_X(géométrie) As valeur_de_X,
ST_Y(géométrie) As valeur_de_Y
FROM public.DELEGATION;
Chaieb Ali-2020/2021-2GTG 18
SELECT *,
ST_X(géométrie) As valeur_de_X,
ST_Y(géométrie) As valeur_de_Y
FROM public.DELEGATION;
Chaieb Ali-2020/2021-2GTG 19
SELECT géométrie,
ST_X(géométrie) As valeur_de_X,
ST_Y(géométrie) As valeur_de_Y
FROM public.DELEGATION;
Chaieb Ali-2020/2021-2GTG 20
Conversion et lecture des coordonnées sous format KML
Chaieb Ali-2020/2021-2GTG 21
Conversion et lecture des coordonnées sous format GML
Chaieb Ali-2020/2021-2GTG 22
Calcul de distance entre les villes Al Dahmani et El Jam
Select
st_distance(st_geometryfromtext('point(484832.313 3976973.75)'),
st_geometryfromtext('point(655574.00 3906755.00)'));
select
st_distance(('point(484832.313 3976973.75)'),
('point(655574.00 3906755.00)'));
Chaieb Ali-2020/2021-2GTG 23
Import du fichier shp
SRID 32632
Chaieb Ali-2020/2021-2GTG 24
Chaieb Ali-2020/2021-2GTG 25
SELECT geom FROM routes;
Chaieb Ali-2020/2021-2GTG 26
SELECT geom, st_Astext(geom)
FROM routes;
Chaieb Ali-2020/2021-2GTG 27
Calcul de la longueur de la route
SELECT st_length(geom)
FROM routes
WHERE gid=1;
Chaieb Ali-2020/2021-2GTG 28
Changement du système de projection (de l’UTM vers le Lambert Nord)
Chaieb Ali-2020/2021-2GTG 29
SRID 22391
Chaieb Ali-2020/2021-2GTG 30
Chaieb Ali-2020/2021-2GTG 31