PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

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

#1 08/05/2018 14:15:30

big1
Membre

le rôle « Administrateur » n'existe pas

Bonjour,
en 9.6  Widows server 2008

Quand je veux créer un utilisateur (dans un cmd dos ouvert comme administrateur)

C:\Users\Administrateur>createuser user1
createuser: could not connect to database postgres: FATAL:  le rôle « Administrateur » n'existe pas

Alors que le rôle existe:

postgres@postgres=# \du
                                        List of roles
   Role name    |                         Attributes                         |   Member of
---------------- +------------------------------------------------------------+---------------
 administrateur| Superuser, Create role                                     | {}
 bob                |                                                            | {secretariat}
 postgres         | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
 secretariat      | Cannot login                                               | {}
 tina                |                                                            | {secretariat}

Merci pour votre aide.

Hors ligne

#2 08/05/2018 15:04:43

gleu
Administrateur

Re : le rôle « Administrateur » n'existe pas

PostgreSQL fait la différence entre majuscule et minuscule. Et en l'occurence, le rôle Administrateur n'existe pas.


Guillaume.

Hors ligne

#3 08/05/2018 15:12:54

big1
Membre

Re : le rôle « Administrateur » n'existe pas

Merci Guillaume.
Sous Windows?

En tous cas:
postgres@cave=# create user Administrateur ROLE Superuser;
ERROR:  role "administrateur" already exists
Time: 6,702 ms
postgres@cave=#

Cordialement.

Hors ligne

#4 08/05/2018 16:31:45

rjuju
Administrateur

Re : le rôle « Administrateur » n'existe pas

Si vous voulez prendre en compte la casse, il faut entourer les noms de guillemets doubles.  Donc

CREATE USER "Administrateur"...

Hors ligne

#5 08/05/2018 17:11:24

gleu
Administrateur

Re : le rôle « Administrateur » n'existe pas

Yep, la difficulté se base sur le fait que les outils en ligne de commande respecte la casse alors que les requêtes SQL transforment les noms d'objet en minuscules s'il n'y a pas de guillemets doubles pour forcer la casse.


Guillaume.

Hors ligne

#6 08/05/2018 17:12:03

gleu
Administrateur

Re : le rôle « Administrateur » n'existe pas

Et en l'occurence, ici, j'aurais plutôt tendance à renommer le rôle administrateur en Administrateur, plutôt que d'en créer un nouveau.


Guillaume.

Hors ligne

#7 09/05/2018 06:27:09

big1
Membre

Re : le rôle « Administrateur » n'existe pas

Merci à vous.
J'ai fait:

postgres@postgres=# ALTER USER "administrateur" RENAME TO "Administrateur";

Et:

C:\Users\Administrateur>createuser user1

C:\Users\Administrateur>
postgres@postgres=# \du
                                        List of roles
   Role name    |                         Attributes                         |
----------------  +------------------------------------------------------------+
 Administrateur| Superuser, Create role                                     |
 bob                |                                                            |
 postgres         | Superuser, Create role, Create DB, Replication, Bypass RLS |
 secretariat      | Cannot login                                               |
 tina                |                                                            |
 user1             |                                                            |

Ça a bien marché.

Hors ligne

Pied de page des forums