J'utilise la version PostgreSql:
postgres=# select version();
version
-------------------------------------------------------------
PostgreSQL 9.2.4, compiled by Visual C++ build 1600, 64-bit
(1 row)
je m'étais connecté à une base de données de postgres=#
à newdb=#
.... Maintenant je suis dans newdb=#
Base de données que je veux déconnecter et revenir à postgres=#
base de données ....
Comment faire ça?
J'ai essayé avec disconnect newdb;
mais sa donne erroe comme ::
postgres=# create database newdb;
CREATE DATABASE
postgres=# \c newdb;
WARNING: Console code page (437) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.
You are now connected to database "newdb" as user "postgres".
newdb=# disconnect newdb;
ERROR: syntax error at or near "disconnect"
LINE 1: disconnect newdb;
^
newdb=#
cela ne fonctionne pas est-il une autre manière de faire ceci ou est-ce que je me trompe dans n'importe quoi !!
C'est facile, il suffit de regarder l'exemple.
- mes bases de données
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+----------+----------+---------+-------+---------------------------
francs | postgres | UTF8 | C | C | =Tc/postgres +
| | | | | postgres=CTc/postgres +
| | | | | francs=C*T*c*/postgres +
| | | | | select_only=c/francs
postgres | postgres | UTF8 | C | C |
source_db | postgres | UTF8 | C | C | =Tc/postgres +
| | | | | postgres=CTc/postgres +
| | | | | source_db=C*T*c*/postgres
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
(5 rows)
--passage en db francs en tant que franc rôle
postgres=# \c francs francs
You are now connected to database "francs" as user "francs".
--swith to db postgres en tant que rôle postgres
francs=> \c postgres postgres
You are now connected to database "postgres" as user "postgres".
postgres=#
--déconnecter de la base de données
postgres=# \q
Il n'y a pas de "déconnexion" dans psql. Au lieu de vous déconnecter de votre base de données newdb, vous vous connectez avec la base de données postgres par défaut.
Créez la nouvelle base de données et connectez-vous à celle-ci:
postgres=# create database newdb;
CREATE DATABASE
postgres=# \c newdb
You are now connected to database "newdb" as user "postgres".
newdb=#
Indiquez le nombre de connexions sur newdb:
newdb=# select datname,numbackends from pg_stat_database where datname='newdb';
datname | numbackends
---------+-------------
newdb | 1
Maintenant, au lieu de vous déconnecter, connectez-vous simplement avec la base de données postgres par défaut.
newdb=# \c postgres
You are now connected to database "postgres" as user "postgres".
postgres=#
Maintenant, il n'y a pas de connexions sur newdb:
postgres=# select datname,numbackends from pg_stat_database where datname='newdb';
datname | numbackends
---------+-------------
newdb | 0