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 03 March 2015 09:31

flo56850
Participant occasionnel
Date d'inscription: 15 Feb 2013
Messages: 15

Suppression d'une table postgres

Bonjour,


Débutant dans l'utilisation de postgres, j'ai deux questions concernant la suppression des tables (en utilisant l'outil pg_admin) :

1 - Est-t-il possible de supprimer les lignes, situées dans la table "geometry_column", qui correspondent aux autres tables lors de la suppression de ces mêmes tables.
J'ai utilisé les différentes manières de suppression des tables ( foncton DROP TABLE",suppression, suppression en cascade ...) et aucune ne supprime la ligne correspondant à ces tables dans la table "geometry_column".

2 - Existe t'il une fonction permettant de supprimer la totalité des tables dans une base sauf quelques unes? Il m'est plus rapide d'écrire le nom des tables à conserver que celles à supprimer (bien plus nombreuses).

Merci par avance pour vos renseignements,

Florent

Hors ligne

 

#2 Tue 03 March 2015 09:53

MathieuB
Membre du bureau
Lieu: Montpellier
Date d'inscription: 18 Jan 2006
Messages: 1220
Site web

Re: Suppression d'une table postgres

Bonjour Florent,

quelle version de PostGis utilisez vous ?

Depuis la version 2, geometry_columns est une vue et non une table. Cette vue interroge les tables systèmes de PostgreSQL pour torouver les tables contenant des colonne de type geometry.

Pour supprimer de nombreuses tables, vous pouvez générer les commandes à l'aide d'une requête telle que ceci (supprimer toutes les tables du schéma public sauf table1 et table 2):

Code:

select concat ('DROP TABLE ',schemaname,'.',tablename,';') from pg_tables
where schemaname IN ('public') AND tablename NOT IN('table1','table2')
ORDER BY schemaname, tablename

Puis commenter ou supprimer si nécessaire les lignes non désirées et éxecuter le SQL produit.


Mathieu BOSSAERT
Association GeoRezo

Hors ligne

 

#3 Tue 03 March 2015 13:57

flo56850
Participant occasionnel
Date d'inscription: 15 Feb 2013
Messages: 15

Re: Suppression d'une table postgres

Bonjour,

J'utilise la version pg admin III version 1.16. Je devrais peut-être la mettre à jour effectivement.
Merci beaucoup pour cette requête. Je vais tester ça!

Hors ligne

 

#4 Tue 03 March 2015 14:52

MathieuB
Membre du bureau
Lieu: Montpellier
Date d'inscription: 18 Jan 2006
Messages: 1220
Site web

Re: Suppression d'une table postgres

C'est la version de PostGIS qui détermine si "geometry columns" est une table ou une vue.


Mathieu BOSSAERT
Association GeoRezo

Hors ligne

 

#5 Tue 03 March 2015 16:32

MathieuB
Membre du bureau
Lieu: Montpellier
Date d'inscription: 18 Jan 2006
Messages: 1220
Site web

Re: Suppression d'une table postgres

Florent,

il est utile et apprécié de mentionner les doubles posts :-)

http://www.forumsig.org/showthread.php/ … post333326


Mathieu BOSSAERT
Association GeoRezo

Hors ligne

 

Pied de page des forums

Powered by FluxBB