Thank you for clarification! PS: Re-reading initial message, I feel ashamed for such foolish questions.
>Вторник, 14 апреля 2020, 17:04 +03:00 от Tom Lane <t...@sss.pgh.pa.us>: > >=?UTF-8?B?0KY=?= < pf...@mail.ru > writes: >> create role "dot.net" >> set session authorization 'dot.net'; >> select to_regrole(session_user); ERROR: invalid name syntax > >Well, we've got this: > >regression=> select session_user; > session_user >-------------- > dot.net >(1 row) > >which is reasonable: that output shouldn't be quoted. >But then: > >regression=> select 'dot.net'::regrole; >ERROR: invalid name syntax >LINE 1: select 'dot.net'::regrole; > ^ > >which is also reasonable. So you need to provide the quoting if >you want to interface these. > >regression=> select to_regrole(quote_ident(session_user)); > to_regrole >------------ > "dot.net" >(1 row) > >> Is there other way (without extra type conversions) for getting oid of >> session_user? > >select oid from pg_roles where rolname = session_user > > >regards, tom lane > >