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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 02 March 2022 14:04

audreytaviaux
Participant occasionnel
Date d'inscription: 12 Jul 2012
Messages: 30

QGIS: Ecraser une table postgresql qui est utilisée par une vue

Bonjour,

J'utilise le gestionnaire BD depuis qgis pour écraser une table dans postgresql, cela fonctionne sauf lorsqu'une table est utilisée par une vue, j'ai alors ce message d'erreur : La création de la source de données "MONSCHEMA"."MATABLE" a échoué :
ERREUR:  n'a pas pu supprimer table MATABLE car d'autres objets en dépendent
DETAIL:  vue MONSCHEMA.MAVUE dépend de table MONSHEMA.MATABLE
HINT:  Utilisez DROP ... CASCADE pour supprimer aussi les objets dépendants.
CONTEXT:  instruction SQL « DROP TABLE IF EXISTS MONSCHEMA.MATABLE RESTRICT »
fonction PL/pgsql dropgeometrytable(character varying,character varying,character varying), ligne 15 à EXECUTE

Est-il possible d'écraser une table (avec exactement la même structure), depuis le gestionnaire BD, lorsqu'une vue y est associée?

Merci, Audrey

Dernière modification par audreytaviaux (Wed 02 March 2022 14:04)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#2 Wed 02 March 2022 15:34

jmarsac
Participant assidu
Lieu: NICE
Date d'inscription: 26 Oct 2005
Messages: 572
Site web

Re: QGIS: Ecraser une table postgresql qui est utilisée par une vue

Bonjour,

Il faut d'abord supprimer la vue (ou les vues) puis la table; ensuite recréer la table puis la ou les vues.

Dans PostgreSQL :

DROP TABLE ... CASCADE
CREATE TABLE
CREATE VIEW

NB : Dans tous les cas, il faut bien sûr connaitre la requête de définition de la ou des vues utilisant la table

Si vous voulez simplement, réinitialiser le contenu de la table sans modifier la structure vous pouvez utiliser DELETE FROM ou bien TRUNCATE


Jean-Marie
Azimut

Hors ligne

 

#3 Wed 02 March 2022 15:42

audreytaviaux
Participant occasionnel
Date d'inscription: 12 Jul 2012
Messages: 30

Re: QGIS: Ecraser une table postgresql qui est utilisée par une vue

Merci, il n'y a pas de solutions qui permette de mettre à jour ces tables depuis le manager de données de QGIS sans supprimer et refaire les vues?

Hors ligne

 

#4 Wed 02 March 2022 16:15

jmarsac
Participant assidu
Lieu: NICE
Date d'inscription: 26 Oct 2005
Messages: 572
Site web

Re: QGIS: Ecraser une table postgresql qui est utilisée par une vue

A ma connaissance, non


Jean-Marie
Azimut

Hors ligne

 

#5 Wed 02 March 2022 17:09

Patrice
JeSuisCharlie
Date d'inscription: 16 Sep 2005
Messages: 4790

Re: QGIS: Ecraser une table postgresql qui est utilisée par une vue

Hello

Humour: j'aime bien "drop all table cascade" ?!

La Sante, GeoBye, Pat


(Autodesk Expert Elite Team)

Hors ligne

 

Pied de page des forums

Powered by FluxBB