Message posté par : Ricola62
----------------------------------------
Bonjour,
Je souhaite récupérer la date de la dernière maj du flux WFS afin d'avertir l'utilisateur.
https://www.sandre.eaufrance.fr/atlas/srv/fre/catalog.search#/metadata/070d…
Comment faire? il y a bien une solution, il s'agit d'un count du nombre d'entités.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=354420#p354420
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
Message posté par : SylvaDEES
----------------------------------------
Bonjour,
je tente de trouver une requête ( un simple SELECT * FROM.... WHERE )
permettant de sélectionner toutes les lignes d'une table comportant des valeurs NULL ou vides.
Ce dernière semble simple, mais je ne parviens pas à trouver la rédaction adaptée
dans la littérature sql existante.
Merci d'avance pour vos contributions.
Géomatiquement.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=359579#p359579
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
Message posté par : Ricola62
----------------------------------------
Bonjour,
Depuis pas mal de temps, le nom du Dbeaver revient réguliértement comme alternative nettement plus sympa que ce bon vieux pgAdmin.
J'ai donc essayé, sauf que j'utilise un fichier de service pour me connecter et là cela se complique... je m'explique
Dans l'édition de connexion: URL: jdbc:postgresql:?service=nom_service
cela fonctionne ... sauf qu'il me prend la database par défault c'est à dire postgres, impossible de voir les autres databases.
Avez vous réussi ou c'est juste pas possible?
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=359517#p359517
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
Message posté par : ploufplouf007
----------------------------------------
Bonjour à tout le monde.
Alors voilà, étant novice dans le monde des triggers, je butte sur un problème...
J'ai deux tables :
Table A :
A1 A2 DATE
1 X;Y;Z 29/03/2023
2 K;L;M 01/04/2023
Table B
B1 B2 B3 B4
1 X OUI
2 Y OUI
3 Z OUI
4 K NON
5 L NON
6 M NON
L'idée, ce que le champ A2 contient une liste d'identifiants séparés par ;
Le champ DATE est mis à jour, c'est de cette mise à jour que le trigger doit se déclencher (si DATE > cast(now() as date) )
Une fois le trigger déclenché, c'est le champ B4 qui doit être modifié.
Si la condition au-dessus est vérifié, alors le champ (booléen) passe à true, sinon ça reste par défaut en false.
Et, puisque sinon c'est pas assez tordu, les identifiants du champ A2 ont une référence tantôt dans le champ B2 tantôt dans le champ B3.
J'ai fait un trigger, qui ne semble pas poser de problème de code en soit (j'arrive à le sauvegarder sans que pgadmin me saute dessus), mais quand je vais les mises à jour, rien ne se passe...
Il est déclaré en AFTER, FOR EACH ROW, et autant en INSERT qu'en UPDATE.
BEGIN
IF NEW.DATE > cast(now() as date)
THEN
UPDATE B
SET NEW.B4 = 'true'
where B2 in (select regexp_split_to_table(A2,';')from A INNER JOIN B on A2 = B2) or B3 in (select regexp_split_to_table(A2,';')from A INNER JOIN B on A2 = B3);
END IF ;
RETURN NEW;
END ;
Est-ce que quelqu'un aurait une idée ?
Merci d'avance :)
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=359446#p359446
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
Message posté par : T. Rossini
----------------------------------------
Bonjour,
la fonction st_accum a été supprimée de postgis à partir de la version 3, vous pouvez la remplacer par array_agg.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=359337#p359337
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
Message posté par : Jérôme KEREBEL
----------------------------------------
Bonjour
J'ai lu avec intérêt les discutions sur le sujet car je cherche à faire la même chose, mais pour des polylignes.
J'ai tenté d'utiliser le script de ChristopheV, mais j'ai le message suivant :
ERREUR : ERREUR: la fonction st_accum(geometry) n'existe pas
J'ai cherché la fonction St_Accum et je ne l'ai pas trouvé
j'ai la version 3.1 de Postgis,
Pourriez-vous m'indiquer ou est cette fonction et comment la charger et la rendre active SVP ?
Merci par avance de vos réponses
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=359336#p359336
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
Message posté par : Léandre Béron
----------------------------------------
Bonjour,
Pour pouvoir passer de Pg 9.6 vers pg 13, une étape importante est de corriger les tables ayant la clause WITH OID = TRUE (plus compatible à partir de pg12).
Pour toute ces tables, nous allons créer une séquence + créer un attribut en base pour stocker les valeurs actuelles et conserver un attribut "oid" en dur cette fois-ci pour ne pas avoir d'impact sur nos outils SIG.
J'ai donc tenté de lister toutes ces tables via la requête suivante :
-----------------
Citation :
select
pt.schemaname ,
pt.tablename
from
pg_catalog.pg_class pc
join pg_catalog.pg_tables pt on pc.relname=pt.tablename
where
pc.relhasoids
and pt.schemaname != 'pg_catalog';
-----------------
Cela semble fonctionner mais cela me liste aussi des tables donc la clause WITH OID est à FALSE.
Je suis donc allé voir 2 tables spécifiques (une avec la clause TRUE et l'autre FALSE) pour lister leurs attributs via cette requête :
-----------------
Citation :
SELECT DISTINCT
*
FROM
pg_attribute pa
JOIN pg_catalog.pg_class pc on pa.attrelid = pc.oid
JOIN pg_catalog.pg_tables pt on pc.relname=pt.tablename
WHERE
pc.relhasoids
AND attname = 'oid'
AND pt.schemaname IN ('m_education_jeunesse','bdcarto')
AND tablename IN ('centre_loisir','toponymeçzone_habitat');
-----------------
Je vois apparaître une ligne attname = 'oid' pour ma table centre_loisir qui n'a pas cette clause à TRUE, et qui n'a pas non plus d'attribut nommé 'oid' dans la table.
Pour assurer mon test, je suis passé par un
-----------------
Citation :
SELECT oid FROM m_education_jeunesse.centre_loisir;
-----------------
pour vérifier et il n'en existe pas.
Je ne comprends pas pourquoi certaines tables avec cette clause OID FALSE sort dans ma requête, ni pourquoi dans pg_attribute j'ai des lignes pour des attname 'oid' sur des tables qui n'en ont pas.
Peut-on 'nettoyer' les tables systèmes ? Cela pourrait-il provenir de manipulations historiques avec des résidus qui seraient restés ?
Cordialement,
Léandre BERON
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=358960#p358960
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
Message posté par : Marc SAINTE-CROIX
----------------------------------------
Bonjour,
Je souhaiterai crée un identifiant qui concaténerai le champ n° Insee de commune (5c) + un n° incrémental automatique.
exemple :
01001 1
..
01001 20
01002 1
..
01002 150
etc.
J'ai idée qu'il me faut créer une séquence, mais je ne sais pas comment la remettre à zéro (à 1) pour chaque nouveau n° insee de commune.
En vous remerciant pour votre aide.
Marc
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=359234#p359234
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
Message posté par : Kiecane
----------------------------------------
Bonjour,
Je souhaiterais réaliser un INSERT INTO de données provenant d'une couche shapefile (.shp) dans ma base de données Postgre/SQL. Certaines de mes colonnes contiennent des données avec les libellés 'oui' ou 'non' ou 'na' exclusivement. Je voudrais donc les intégrer sous la forme de booléens dans les colonnes de la table correspondante qui se trouve dans ma base.
J'ai rédigé un script de la forme suivante :
INSERT INTO mon_schema.ma_table_vide
(
id_table,
colonne1_table,
colonne2_table,
colonne3_table,
colonne4_table,
geom,
)
SELECT
id_shp,
colonne1_shp,
colonne2_shp
colonne3_shp,
colonne4_shp,
geom,
FROM
mon_schema.shp_import
En supposant que colonne2_shp et colonne3_shp soient des booléens (libellés 'oui', 'non', ou 'NA'), pourriez-vous m'indiquer comment procéder pour que le 'oui' de colonne2_shp soit associé à un true dans colonne2_table et ainsi de suite s'il-vous-plaît ? Je n'arrive pas à trouver de solutions, je suppose que mes erreurs sont liées au mauvais placement de mon WHERE : true WHERE mon_schema.colonne2_shp ='oui' OR false WHERE mon_schema.colonne2_shp ='non'.
Je vous remercie de votre compréhension,
Cordialement.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=359132#p359132
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