Vous n'êtes pas identifié(e).

#1 24/04/2013 17:21:22

barthymus
Membre

Suppression d'une base qui ne se laisse pas faire !

Bonjour ! smile

Voilà je me suis rendu compte que j'avais une petite base (serveur de test) qui ne veut pas se laisser suprimer, ni backupé d'ailleurs.
Je lance dropdb et voilà le résultat.

 dropdb Banane
dropdb: database removal failed: ERROR:  database "Banane" does not exist

Le problème, c'est que quand je liste mes bases...

   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges
-----------+----------+----------+-------------+-------------+-----------------------
 Banane    | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |

Une idée ?
J'ai tenté les quotes, doubles quotes... hmm Sans succès

Merci à tous pour votre aide smile

Hors ligne

#2 24/04/2013 18:44:47

rjuju
Administrateur

Re : Suppression d'une base qui ne se laisse pas faire !

Bonjour,

esssayez « dropdb \"Banane\" »

Hors ligne

#3 25/04/2013 08:12:40

barthymus
Membre

Re : Suppression d'une base qui ne se laisse pas faire !

postgres@pgrt001(newDB): dropdb \"Banane\"
dropdb: database removal failed: ERROR:  database ""Banane"" does not exist
postgres@pgrt001(newDB): dropdb \'Banane\'
dropdb: database removal failed: ERROR:  database "'Banane'" does not exist

hmm Merci de ton aide mais sans succès là

Hors ligne

#4 25/04/2013 09:32:36

rjuju
Administrateur

Re : Suppression d'une base qui ne se laisse pas faire !

que renvoie « select '>' || datname || '<' from pg_database where datname ilike '%banane%'; » ?

Hors ligne

#5 25/04/2013 10:02:25

barthymus
Membre

Re : Suppression d'une base qui ne se laisse pas faire !

J'obtiens :

 ?column?
----------
 >Banane<
(1 row)

Hors ligne

#6 25/04/2013 10:24:38

rjuju
Administrateur

Re : Suppression d'une base qui ne se laisse pas faire !

Votre « dropdb Banane» du début aurait du fonctionner. Êtes vous sur qu'il s'agit du même serveur ? Sinon vous pouvez essayer de passer par psql avec l'autocomplétion

Hors ligne

#7 25/04/2013 10:36:05

Bidou
Membre

Re : Suppression d'une base qui ne se laisse pas faire !

Peut-être juste tenter le DROP DATABASE Banane en PSQL ?

Hors ligne

#8 25/04/2013 11:03:35

rjuju
Administrateur

Re : Suppression d'une base qui ne se laisse pas faire !

Attention, en sql, il est obligatoire de mettre les double cotes (") pour spécifier la casse (l'exécutable dropdb le fait automatiquement normalement).

Hors ligne

#9 26/04/2013 15:23:12

barthymus
Membre

Re : Suppression d'une base qui ne se laisse pas faire !

Alors... Merci pour votre aide déjà.
Vraiment corriace celle là !

postgres=# drop database (Utilisation de l'autocompletion)
"B1"       "B2"       "Banane"  
postgres=# drop database "Banane" ; 
ERROR:  database "Banane" does not exist

hmm

Hors ligne

#10 26/04/2013 16:34:28

rjuju
Administrateur

Re : Suppression d'une base qui ne se laisse pas faire !

Que renvoie la requête « SELECT datname,encode(datname::bytea,'hex') FROM pg_database ; » ?

Sinon au cas où, vous pouvez toujours essayer de réindexer le catalogue système : « REINDEX INDEX  pg_database_datname_index; »

Hors ligne

#11 27/04/2013 12:53:03

hassouna
Membre

Re : Suppression d'une base qui ne se laisse pas faire !

Je m’excuse pour le dérangement, j'aimerai avoir votre aide, j'ai commencé à utiliser l’extension de postgreSQL-IE et j'ai crée une table qui contient un champ ou je peut stocké une image de type "PGImage"mais pour l'insertion j'aurai toujours cette erreurs, vous trouvez en-dessous:
ERREUR: la fonction addimage(character varying, character varying, character varying, integer, text, character varying, text, text) n'existe pas
État SQL :42883
Astuce : Aucune fonction ne correspond au nom donné et aux types d'arguments.
Vous devez ajouter des conversions explicites de type.
Contexte : PL/pgSQL function insert_image(character varying,character varying,character varying) line 96 at instruction SQL l'erreur:

Hors ligne

#12 02/05/2013 10:31:20

barthymus
Membre

Re : Suppression d'une base qui ne se laisse pas faire !

Bonjour . Merci encore pour votre aide
Hassouna, je pense pas que ta question puisse trouver réponse ici smile Faudrait mieux poster sur un fil propre à toi.

Pour ce qui est de la requete :

 postgres=# SELECT datname,encode(datname::bytea,'hex') FROM pg_database ;
  datname  |       encode
-----------+--------------------
 template1 | 74656d706c61746531
 template0 | 74656d706c61746530
 postgres  | 706f737467726573
 Banane    | 42616e616e65
 B1        | 4231
 B2        | 4232
 fg50op02  | 666735306f703032
 fg50ot01  | 666735306f743031

Est ce que sa aide ?

Hors ligne

#13 02/05/2013 15:31:32

rjuju
Administrateur

Re : Suppression d'une base qui ne se laisse pas faire !

Le nom de la base ne contient pas de caractère exotique. Avez-vous essayé de recréer l'index ? Sinon, peut-être que les fichiers physiques de la base ont été supprimé ? (répertoire $PGDATA/oid_de_la_base)

Hors ligne

Pied de page des forums