Je suis nouveau à PostgreSQL et j'ai un problème avec ce que je percevoir d'être une simple commande Drop Drop code> et
dropdb code>. Pourquoi les commandes suivantes ne suppriment-elles pas ma base de données?
postgres=# drop database clientms
postgres-# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+--------------+----------+-------------+-------------+-----------------------
clientms | clientmsuser | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 |
postgres | postgres | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 |
template0 | postgres | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)
postgres-# dropdb clientms
postgres-# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+--------------+----------+-------------+-------------+-----------------------
clientms | clientmsuser | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 |
postgres | postgres | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 |
template0 | postgres | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)
4 Réponses :
Vous avez oublié le point-virgule La commande incomplète est également indiquée par l'invite: ; code> après la commande. Essayez:
- code> au lieu de
= code>. Ceci est pour permettre des commandes multilignes. P> p>
Ouais! Les gens laissent beaucoup sur les messages sur le sujet que j'ai vu :(
Selon le client, le point-virgule peut ne pas être requis pour une seule commande. C'est nécessaire dans la PSQL interactif cependant.
Vous pouvez utiliser -s ou --Single-ligne pour vous débarrasser du point-virgule requis.
Apparemment Les clients destructdb CODE> WORKS (m'a pris beaucoup de creusage) [link] p>
Aucune telle commande. Je suppose que vous voulez dire drotherdb code>, qui est l'ancienne forme de l'outil de ligne de commande de jour moderne
DROPDB code>
.
La différence est que drotherdb code> (ou plutôt, la ligne de commande
dropdb code> outil) ne fonctionne pas sur l'invite
psql code>, mais via un Unix Shell ou Windows 'cmd.exe. Les commandes sur les coquilles UNIX et CMD.EXE sont terminées par une nouvelle ligne, pas un point-virgule, vous avez donc réellement exécuté la commande lorsque vous travaillez sur une coquille.
Adaptinant, j'avais déjà résolu ce problème, puis la rencontrait encore une année et un peu plus tard et résolu de la manière différente, car je n'ai pas remarqué que j'avais déjà reçu des notes sur la manière de le réparer. Voici mes notes: p>
http://www.itsupportforum.net/ Sujet / Impossible-Delete-Drop-PostgreSQL-Base de données / P>
En résumé, je ne pouvais pas supprimer le DB car il était utilisé par l'interface que j'utilisais pour la supprimer. Dumb. P>
Un lien vers une solution est la bienvenue, mais assurez-vous que votre réponse est utile sans elle - Citez la partie la plus pertinente de la solution B> de la page que vous connectez, au cas où la page cible n'est pas disponible. Les réponses qui sont peu plus qu'une liaison peuvent être supprimées.
le faire manuellement: strong> p>
Stackoverflow.com/questions/12472026