Message posté par : Edouard Hyvernat
----------------------------------------
Bonjour,
Je ne suis pas la personne la plus éclairé pour répondre à vos questionnements car je
manque de pratiques et de bases solides mais étant une nouvelle fois attérré (et triste
aussi disons le) par les réponses de M. Boulerie qui est toujours prompt pour noyer ou
enfumer les posts par des considérations alambiquées je vais essayer de reprendre point
par point votre message avec mes mots bien imparfaits :
-----------------
Citation :
Débutant sur Postgis, je m’entraîne à importer des couches vecteurs de QGis à PostGre
-----------------
Petite remarque préalable : PostgreSQL est un gestionnaire de base de données qui comprend
plusieurs extensions dont PostGis qui permet de traiter des objets géographiques via un
ensemble de fonctions dédiées et en stockant et en permettant l'interprétation de
cette géométrie par des outils tiers.
Un des intérêts d'utiliser des "données SIG" étant de permettre d'avoir
une représentation géométriques (point, ligne, polygone) dans l'espace augmentée
d'un ensemble d'attribut, la bonne démarche à mon sens est de s'intéresser
d'abord au fonctionnement de PostgreSQL puis à ce qu'apporte PostGIS à ce
gestionnaire de base de donnée
En synthèse de comprendre la syntaxe pour charger, créer, sauvegarder, etc. des données
dans PostgreSQL puis de comprendre comment, une fois l'extension PostGIS installé
lorsqu'on charge dans un champ dédié (ex : the_geom) une chaîne de caractères de type
"01000100000A00660CD58565..." (format WKB) et bien cela permet à un outil tiers
(ex QGIS) d'interpréter ce champ comme un polygone, une ligne ou un point localisé
dans l'espace.
-----------------
Citation :
Jusqu'à présent, en m’entraînant à créer des bases de données simples sur PostGre, je
faisais en sorte de toujours garder le script de création des tables et de remplissage
avec moi
-----------------
Effectivement, en travaillant de la sorte, on peut dire que vous prenez les choses par le
"bon bout" puisque vous allez vous familiariser avec les commandes de PostgreSQL
permettant de créer des bases de données, des tables, des champs à l'intérieur de ces
tables et donc de les peupler d'objets (de ligne dans votre base de donnée pour
vulgariser à l'extrême). C'est vous qui créez directement de la donnée dans
PostgreSQL par vos scripts, et via une syntaxe spécifique.
-----------------
Citation :
Or, j'ai récemment découvert sur QGis 3.8 l'option "Exporter dans
PostGreSQL", permettant d'importer directement une couche vecteur directement
dans ma base de donnée sur PostGre
-----------------
Donc si on réfléchit à ce que fait cette "option", on comprend que QGIS va jouer
le rôle de l'instructeur à votre place et donner les ordres pour que votre base de
donnée soit remplie.
-----------------
Citation :
Cependant, sauf erreur de ma part, aucun script ne s'est crée. Pas de CREATE TABLE, ni
de INSERT INTO.
-----------------
Si vous me suivez toujours dans mon raisonnement, vous savez que votre base de donnée a
besoin d'instructions et de valeurs pour se peupler mais le fait de sauvegarder cette
instruction est un choix personnel et PostgreSQL n'a pas besoin de stocker,
d'enregistrer cette instruction pour "travailler". Il reçoit un ordre, il
l'exécute et seul résultat de tout cela est stocké en dur dans la base de donnée.
Ceci étant dit, si vous utilisez un outil graphique type PG Admin pour travailler votre
BD, vous trouverez bien l'instruction CREATE TABLE dans la définition de chaque table
de votre base de données.
-----------------
Citation :
Doit-on se passer de scripts lorsqu'on passe au spatial dans PostGre ?
-----------------
Manifestement cette question qu'on pourrait garder comme sujet d'un Baccalauréat
imaginaire sur la philosophie des SIG (pardonnez mon sarcasme) me pousse à vous
recommander de reprendre progressivement chaque point évoqué plus haut et vous en déduirez
alors que :
- Comme tout gestionnaire de base de données, qu'elles soient spatiales ou non,
PostgreSQL a besoin d'instructions écrites qu'on appelle souvent
"script" et peuvent être produites directement par vous via le terminal/la
console (ex : psql qui est le terminal de PostgreSQL), via une interface graphique (PG
Admin, DBeaver par ex.), via un outil SIG (QGIS par ex.)
-----------------
Citation :
Selon moi c'est aussi un excellent moyen de limiter la taille des données shape, vu
que tout tiens dans un script.
-----------------
Je vais terminer par ce par quoi j'aurai du commencer.
Prenez le temps de lire par exemple ce cours :
http://www.postgis.fr/chrome/site/docs/workshop-foss4g/doc/index.html et dans quelques
temps vous vous rendrez compte que votre phrase n'est pas très intelligible.
J'ai beaucoup écrit pour pas grand chose au final et je ne veux pas paraitre comme un
donneur de leçon ni être cassant mais je souhaitais vous faire prendre conscience de
l'importance de lire, et de comprendre au moins de manière schématique, le
fonctionnement de vos outils avant de foncer tête baissée dans leurs utilisations... et
aussi de ne pas vous laisser croire que le sûrement très sympathique Pascal Boulerie saura
vous aider dans vos questions ;)
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=326627#p326627
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net