Re: Using row_to_json with %ROWTYPE ?

Поиск
Список
Период
Сортировка
От Marc Mamin
Тема Re: Using row_to_json with %ROWTYPE ?
Дата
Msg-id B6F6FD62F2624C4C9916AC0175D56D8828B5AF98@jenmbs01.ad.intershop.net
обсуждение исходный текст
Ответ на Re: Using row_to_json with %ROWTYPE ?  (David Johnston <david.g.johnston@gmail.com>)
Ответы Re: Using row_to_json with %ROWTYPE ?  (Tim Smith <randomdev4+postgres@gmail.com>)
Список pgsql-general

>Von: pgsql-general-owner@postgresql.org [pgsql-general-owner@postgresql.org]" im Auftrag von "David Johnston [david.g.johnston@gmail.com]
>Gesendet: Freitag, 6. Februar 2015 00:38
>An: Tim Smith
>Cc: Adrian Klaver; pgsql-general
>Betreff: Re: [GENERAL] Using row_to_json with %ROWTYPE ?
>On Thu, Feb 5, 2015 at 4:29 PM, Tim Smith <randomdev4+postgres@gmail.com> wrote:
>
>    You're most welcome to look at my view definition view if you don't
>    believe me ....
>
>    View definition:
>     SELECT a.session_id,
>        a.session_ip,
>        a.session_user_agent,
>        a.session_start,
>        a.session_lastactive,
>        b.user_id,
>        b.tenant_id,
>        b.reseller_id,
>        b.tenant_name,
>        b.user_fname,
>        b.user_lname,
>        b.user_email,
>        b.user_phone,
>        b.user_seed,
>        b.user_passwd,
>        b.user_lastupdate,
>        b.tenant_lastupdate
>       FROM app_sessions a,
>        app_users_vw b
>      WHERE a.user_id = b.user_id;
>
>?So that view and definition are correct.
>So either PostgreSQL is seeing a different view (in a different schema) or the function is confused in ways difficult to predict.
>I guess it is possible that:
>(SELECT v_?row FROM v_row) would give that message but I get a "relation v_row does not exist" error when trying to replicate the scenario.
>?It may even be a bug but since you have not provided a self-contained test case, nor the version of PostgreSQL, the assumption is user error.?
>David J.

Hello,
I don't know if there is some internal confusion when using the ROWTYPE (bug?)
but if this helps, following function is equivalent and does the job:

create or replace function doStuff() returns json as $$

  select row_to_json(app_val_session_vw) from app_val_session_vw WHERE ...;

$$ LANGUAGE sql;

В списке pgsql-general по дате отправления:

Предыдущее
От: Tim Smith
Дата:
Сообщение: Re: Using row_to_json with %ROWTYPE ?
Следующее
От: Guillaume Drolet
Дата:
Сообщение: Cluster seems broken after pg_basebackup