Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
software:applications:postgresql:introduction_client_postgres_psql [2022/11/10 09:51] – ↷ Nom de la page changé de software:applications:postgresql:introduction_aux_commandes_postgres à software:applications:postgresql:introduction_client_postgres_psql yoann | software:applications:postgresql:introduction_client_postgres_psql [2022/11/10 11:24] (Version actuelle) – yoann | ||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
:TODO: : | :TODO: : | ||
- | ====== | + | ====== PostgreSQL |
Pour s' | Pour s' | ||
Ligne 21: | Ligne 21: | ||
</ | </ | ||
- | Si on invoque le client **psql** sans argument, le rôle et le nom de la base utilisés par défaut sont déduit du nom de l' | + | Si on invoque le client **psql** sans argument, le rôle et le nom de la base utilisés par défaut sont déduit du nom de l' |
<code bash> | <code bash> | ||
Ligne 39: | Ligne 39: | ||
Lorsque le client s' | Lorsque le client s' | ||
- | ===== Les méta commandes | + | ===== Les méta commandes ===== |
- | Le client **psql** dispose de méta-commandes qui sont interprétées par psql lui-même: | + | Le client **psql** dispose de méta-commandes qui sont interprétées par psql lui-même. Elles ont été pensées |
- | * Elles commencent par un backslash ' | + | * Elles commencent par un backslash ' |
* Les mnémoniques sont en minuscules; | * Les mnémoniques sont en minuscules; | ||
* Elles se terminent par un retour à la ligne ou sont séparées par ' | * Elles se terminent par un retour à la ligne ou sont séparées par ' | ||
Ligne 78: | Ligne 78: | ||
\echo :USER | \echo :USER | ||
- | -- Exécuter une commande externe | + | -- Exécuter une commande externe |
\! ls -lh | \! ls -lh | ||
Ligne 85: | Ligne 85: | ||
</ | </ | ||
+ | ===== Exécution pas à pas ===== | ||
+ | |||
+ | Pour le débogage des scripts ou des commandes, il peut être intéressant de démarrer psql avec l' | ||
+ | |||
+ | <code bash> | ||
+ | psql -s -U alice dbtest | ||
+ | </ | ||
+ | |||
+ | Si psql n'a pas été lancé avec l' | ||
+ | |||
+ | < | ||
+ | \set SINGLESTEP on | ||
+ | </ | ||
+ | |||
+ | Pour quitter le mode pas à pas on supprime la variable: | ||
+ | < | ||
+ | \unset SINGLESTEP | ||
+ | </ | ||
===== Gestion des rôles ===== | ===== Gestion des rôles ===== | ||
Ligne 109: | Ligne 127: | ||
create role john with NOLOGIN; | create role john with NOLOGIN; | ||
+ | -- Modifier un rôle existant | ||
alter role john with LOGIN CREATEDB; | alter role john with LOGIN CREATEDB; | ||
- | -- Affecter un mot de passe à un compte | + | -- Affecter un mot de passe à un rôle existant |
alter role john password ' | alter role john password ' | ||
- | -- Annuler le mot de passe associé à un compte | + | -- Annuler le mot de passe associé à un rôle |
alter role john with password null; | alter role john with password null; | ||
Ligne 187: | Ligne 206: | ||
< | < | ||
\list | \list | ||
+ | \l | ||
</ | </ | ||
Pour créer une base | Pour créer une base | ||
- | < | + | < |
- | create database | + | CREATE DATABASE |
</ | </ | ||
Réaffecter un base à un utilisateur existant: | Réaffecter un base à un utilisateur existant: | ||
- | < | + | < |
- | alter database | + | ALTER DATABASE |
</ | </ | ||
Supprimer la base. | Supprimer la base. | ||
- | < | + | < |
- | drop mabase; | + | DROP DATABASE |
</ | </ | ||