Re: jsonb_array_length: ERROR: 22023: cannot get array length of a scalar

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
Cc: Alexander Farber <alexander(dot)farber(at)gmail(dot)com>, pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: jsonb_array_length: ERROR: 22023: cannot get array length of a scalar
Date: 2018-03-02 18:04:02
Message-ID: CAKFQuwb2b7y3OrPCWxOqEm4u4my4VkvXUx3reNo7OuP==7ELHA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Friday, March 2, 2018, Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> wrote:

> On 03/02/2018 06:42 AM, Alexander Farber wrote:
>
>>
>>
> 2018-03-02 15:30:33.646 CET [16693] LOG: duration: 0.058 ms bind
> <unnamed>: SELECT out_uid AS uid, out_fcm AS fcm, out_apns AS apns,
> out_adm AS adm, out_body AS body FROM words_play_game($1::int, $2::int,
> $3::jsonb)
>
> where is $3::jsonb coming from?
>
>
Java prepared statement I think, using setString.

Not at computer right now but what does:

'[1,2,3]'::text::jsonb result in compared to '[1,2,3]'::jsonb ?

Because the system think your array-looking string is actually just a
scalar that happens to have a leading [ and a trailing ]

David J.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2018-03-02 18:11:06 Re: jsonb_array_length: ERROR: 22023: cannot get array length of a scalar
Previous Message Adrian Klaver 2018-03-02 18:01:48 Re: How can I include sql file in pgTAP unittest?