Je suis un débutant postgreSQL et je ne trouve aucune introduction utilisable à l'utilisation de la commande psql. Au moins, je pense que c'est la commande que je veux utiliser.
Est-il possible dans postgreSQL de se connecter simplement au serveur puis de lister, créer, utiliser et examiner les bases de données?
J'aimerais pouvoir utiliser psql pour faire quelque chose comme ça avec MySQL (j'ai supprimé de nombreuses lignes supplémentaires):
Connectez-vous sans spécifier de base de données - je n'arrive pas à le faire avec psql:
$ mysql -u root -prootpassword
Welcome to the MySQL monitor. Commands end with ; or \g.
Server version: 5.5.28 MySQL Community Server (GPL)
Je peux lister des bases de données avec mysql mais la commande posgreSQL SHOW ne semble pas le faire.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| ocdp |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.04 sec)
Je peux changer de base de données.
mysql> use ocdp;
Database changed
Je ne peux pas comprendre cette commande dans psql:
mysql> show tables;
+---------------------------------+
| Tables_in_ocdp |
+---------------------------------+
| OCAddresses |
| OCStreets |
+---------------------------------+
2 rows in set (0.00 sec)
Je pense que je peux le faire dans psql avec les commandes 'createdb' et 'dropdb':
mysql> create database foo;
Query OK, 1 row affected (0.00 sec)
mysql> drop database foo;
Query OK, 0 rows affected (0.03 sec)
J'utilise\quitter
mysql> quit
Bye
La réponse à ces questions ne devrait prendre qu'un instant pour quelqu'un qui connaît postgreSQL, mais je ne trouve aucune documentation nulle part qui montre comment effectuer ces opérations simples. Peut-être que je ne devrais même pas utiliser psql pour ça?
connecter au serveur:
$ mysql -u root -prootpassword
$ su - postgres
$ psql
liste des bases de données:
mysql> show databases;
postgres=# \l
changer de base de données:
mysql> use ocdp;
postgres=# \c ocdp
montrer les tableaux:
mysql> show tables;
postgres=# \dt
créer une base de données:
mysql> create database foo;
postgres=# create database foo;
déposer la base de données:
mysql> drop database foo;
postgres=# drop database foo;
quitter:
mysql> quit
postgres=# \q
Essayez d'utiliser cette commande si vous utilisez Mac-OS-X et pour postgres 9.4
psql --list
Citation du manuel
Le nom d'utilisateur par défaut est votre nom d'utilisateur Unix, tout comme le nom de base de données par défaut
Citation du manuel
\ connect [dbname [username] [Host] [port]] Etablit une nouvelle connexion avec un serveur PostgreSQL
Citation du manuel
\ d [S +] [motif] Pour chaque relation (table, vue, index, séquence ou table étrangère) ou type composite correspondant au motif, afficher toutes les colonnes
C'est la même déclaration dans PostgreSQL, qui est documentée dans le manuel
Citation du manuel
\ q ou\quit Quitte le programme psql.
Postgresql avec terminal
entrer dans le postgresql
Sudo -u postgres psql
trouver la liste des bases de données dans postgresql par
$ \l
se connecter à la base de données en suivant la commande
$ \c databasename
afficher les modèles dans la base de données par
$ \dt
Maintenant, la liste des tables présentes dans la base de données est affichée et effectue des opérations sur les tables comme
$ select * from table;