Re: Prepared statements and unknown types

Поиск
Список
Период
Сортировка
От Thom Brown
Тема Re: Prepared statements and unknown types
Дата
Msg-id AANLkTin2pXrtyp8bOj1bh1kA+JbQHaZDFFuYkFNLwByr@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Prepared statements and unknown types  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
On 29 September 2010 20:02, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Peter Bex <Peter.Bex@xs4all.nl> writes:
>> On Wed, Sep 29, 2010 at 07:33:53PM +0100, Thom Brown wrote:
>>> Okay, I understand what's happening.  But does the planner need to
>>> understand the type of literals in the select list if it's not used
>>> anywhere else?
>
>> Fields sent back to the client also carry their type with them.
>> There's no "unknown" type (and it wouldn't be very useful in any
>> case, because how would you go about displaying an unknown type?)
>
> Well, actually there *is* an "unknown" type (OID 705), which is what
> will be reported if there's a literal of unresolved type in the SELECT
> list.  That's how come you can do
>
> regression=# select 'foo' as meow;
>  meow
> ------
>  foo
> (1 row)
>
> However, the issue here is not the output but the input: PREPARE is
> complaining that the *input* parameter $1 has no determinate type.
> If PREPARE doesn't know it, then the client isn't going to know it
> either, and so it would be hard for the client to know what to send
> to execute the statement.

We'll have to think of ways to work round this then as it's for a
database class in a common library we're building.

Thanks Tom

--
Thom Brown
Twitter: @darkixion
IRC (freenode): dark_ixion
Registered Linux user: #516935

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Prepared statements and unknown types
Следующее
От: Dianne Yumul
Дата:
Сообщение: Get next OID