"Milen A. Radev" <milen(at)radev(dot)net> writes:
> Rafael Domiciano :
>> I need to create a role (Postgres user) that cannot drop or create table,
>> but can create TEMP tables. This role must do I, U and D normally.
> For a role to be able to create tables (and other objects) it should
> have "CREATE" privilege on the _schema_ in question.
More specifically, what you're going to need to do is revoke "public"
create access on the public schema, and then selectively grant it to
everyone you want to have it. There's no notion of "everyone but X
gets this privilege".
regards, tom lane