彼がオブジェクトの所有者を変更できるようにするために、現在のユーザー( "userA")に与える必要があるgrant
オプション/トリックとはこれは別のユーザー( "userC")に属しますか?
より正確には、contactテーブルはuserCによって所有され、I所有者をuserBに変更するために次のクエリを実行し、userA:
alter table contact owner to userB;
私はこのエラーを受け取ります:
ERROR: must be owner of relation contact
ただし、userAは、通常それを行うために必要なすべての権限を持っています( "schema "付与オプションで十分です):
grant select,insert,update,delete on all tables in schema public to userA;
grant select,usage,update on all sequences in schema public to userA;
grant execute on all functions in schema public to userA;
grant references, trigger on all tables in schema public to userA;
grant create on schema public to userA;
grant usage on schema public to userA;
Thks
コマンドライン出力:
root@server:~# psql -U userA myDatabase
myDataBase=>\dt contact
List of relations
Schema | Name | Type | Owner
-------+---------+----------+---------
public | contact | table | userC
(1 row)
myDataBase=>
myDataBase=>alter table contact owner to userB;
ERROR: must be owner of relation public.contact
myDataBase=>
ファインマニュアル から。
ALTER TABLEを使用するには、テーブルを所有する必要があります。
または、データベースのスーパーユーザーになります。
エラー:関係連絡先の所有者である必要があります
PostgreSQLのエラーメッセージは通常、スポットです。これはスポットです。