ERREUR: permission denied pour la séquence cities_id_seq à l'aide de Postgres

Je suis nouveau sur postgres (et à la base de données info systèmes dans l'ensemble). J'ai couru script sql suivant sur ma base de données:

create table cities (
id serial primary key,
name text not null
);

create table reports (
id serial primary key,
cityid integer not null references cities(id),
reportdate date not null,
reporttext text not null
);

create user www with password 'www';

grant select on cities to www;
grant insert on cities to www;
grant delete on cities to www;

grant select on reports to www;
grant insert on reports to www;
grant delete on reports to www;

grant select on cities_id_seq to www;
grant insert on cities_id_seq to www;
grant delete on cities_id_seq to www;

grant select on reports_id_seq to www;
grant insert on reports_id_seq to www;
grant delete on reports_id_seq to www;

Lorsque, en tant que l'utilisateur www, en essayant de:

insert into cities (name) values ('London');

J'obtiens l'erreur suivante:

ERROR: permission denied for sequence cities_id_seq

- Je obtenir que le problème est avec la série du type. C'est pourquoi j'ai grant select, insert et de supprimer les droits de l' *_id_seq pour www. Pourtant, cela ne résout pas mon problème. Ce qui me manque?

  • L'octroi de l'insérer/supprimer une séquence ne fait pas de sens pour moi. Je suis surpris que cela fonctionne.
InformationsquelleAutor Vampnik | 2012-02-17