Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Tue 09 April 2019 17:36

bruhnild
Participant actif
Lieu: Lyon
Date d'inscription: 7 Jun 2014
Messages: 130

Deux moyens équivalent pour créer une colonne geom ?

Bonjour,

Je me pose une question essentielle :

Quelle est la différence fondamentale entre ces deux instructions SQL pour créer une colonne de géométrie?


Code:

ALTER TABLE table ADD COLUMN geom geometry(Point,4326)

Code:

SELECT ADDGEOMETRYCOLUMN ('schema','table','geom',4326,'POINT',2)

Je suis tombée sur cette explication dans la doc de postgis mais ce n'est pas encore assez clair pour moi..

https://postgis.net/docs/AddGeometryColumn.html

Changed: 2.0.0 This function no longer updates geometry_columns since geometry_columns is a view that reads from system catalogs. It by default also does not create constraints, but instead uses the built in type modifier behavior of PostgreSQL. So for example building a wgs84 POINT column with this function is now equivalent to: ALTER TABLE some_table ADD COLUMN geom geometry(Point,4326);

Changed: 2.0.0 If you require the old behavior of constraints use the default use_typmod, but set it to false.


Merci d'avance pour vos réponses!

Hors ligne

 

#2 Wed 10 April 2019 10:54

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1536

Re: Deux moyens équivalent pour créer une colonne geom ?

Bonjour;

AddGeometryColumn date de l'ancien temps de Postgis et permettait d'ajouter des contraintes a la colonne géo (type, srid) et d'enregistrer cette colonne dans la table GeometryColumns (table listant toutes les colonnes geo, issue de la norme OGC).

Depuis la 2.0, plus besoin de passer par là: les types geometry et geography acceptent des typemod (modificateur de type) permettant de préciser des infos sur la colonne géo (type, srid). (meme principe que VARCHAR(12), ou (12) modifie le type VARCHAR pour le limiter a 12 caractères max)

Ces info étant enregistrées dans la BD, plus besoin de table geometryColumns, mais une vue suffit, listant en temps réel toutes les colonnes géo des tables.

Vous pouvez donc oublier addGeometryColumns.

Pour déclarer un type géo:

Code:

... geom geometry; -- => la colonne peut stocker pt, lignes, pg, etc., srid = 0 (pas d'info)
... geom geometry(POINT); -- la colonne ne peut stocker que des POINT, srid = 0
... geom geometry(POINT, 2154); -- colonne ne peut stocker que des POINT, avec un srid = 2154 obligatoire.

Nico

Hors ligne

 

#3 Thu 09 May 2019 13:16

bruhnild
Participant actif
Lieu: Lyon
Date d'inscription: 7 Jun 2014
Messages: 130

Re: Deux moyens équivalent pour créer une colonne geom ?

Bonjour,
Je vous remercie pour ces éléments de réponses!

Hors ligne

 

#4 Thu 09 May 2019 13:16

bruhnild
Participant actif
Lieu: Lyon
Date d'inscription: 7 Jun 2014
Messages: 130

Re: Deux moyens équivalent pour créer une colonne geom ?

Bonjour,
Je vous remercie pour ces éléments de réponses!

Hors ligne

 

#5 Thu 09 May 2019 13:21

bruhnild
Participant actif
Lieu: Lyon
Date d'inscription: 7 Jun 2014
Messages: 130

Re: Deux moyens équivalent pour créer une colonne geom ?

Bonjour,
Je vous remercie pour ces éléments de réponses!

Hors ligne

 

#6 Thu 09 May 2019 13:56

bruhnild
Participant actif
Lieu: Lyon
Date d'inscription: 7 Jun 2014
Messages: 130

Re: Deux moyens équivalent pour créer une colonne geom ?

Je suis désolée, il y a eu quelques soucis au moment de l'envoi de mon message..Je ne sais pas comment supprimer une réponse.

Hors ligne

 

#7 Thu 09 May 2019 13:56

bruhnild
Participant actif
Lieu: Lyon
Date d'inscription: 7 Jun 2014
Messages: 130

Re: Deux moyens équivalent pour créer une colonne geom ?

Error: Couldn't get mail server response codes. Please contact the forum administrator. Expected response: 220.

Hors ligne

 

Pied de page des forums

Powered by FluxBB