Re: Bytea network traffic: binary vs text result format

Поиск
Список
Период
Сортировка
От Markus Schiltknecht
Тема Re: Bytea network traffic: binary vs text result format
Дата
Msg-id 46640B8F.8040503@bluegap.ch
обсуждение исходный текст
Ответ на Bytea network traffic: binary vs text result format  ("Miha D. Puc" <miha.puc@eba.si>)
Ответы Re: Bytea network traffic: binary vs text result format  ("Wilhansen Li" <willi.t1@gmail.com>)
Список pgsql-interfaces
Hi,

Miha D. Puc wrote:
> So there is a need (people asking) and reason (performance) to use
> binary format.

You are aware that PostgreSQL itself *can* transfer values in binary 
format? Check the Documentation: "43.1.3. Formats and Format Codes":

http://www.postgresql.org/docs/8.1/interactive/protocol.html

This works since protocol version 3, AFAICT. The client needs to support 
that, though. But the php pgsql binding, just as an example, doesn't use 
that feature.

> So with all the above there should be a utility for conversion between
> binary format and native types and/or string format in libpq.

There already are. Not in libpq, though. Most (if not all) internal 
types have those functions. See for example:
  # SELECT typinput, typoutput, typreceive, typsend  #   FROM pg_type WHERE typname='int4';
   typinput | typoutput | typreceive | typsend  ----------+-----------+------------+----------   int4in   | int4out   |
int4recv  | int4send  (1 row)
 


The input and output functions deal with the textual representation, 
while send and receive convert to a binary representation in network 
byte order.

Hope that helps.

Regards

Markus



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

Предыдущее
От: "Miha D. Puc"
Дата:
Сообщение: Bytea network traffic: binary vs text result format
Следующее
От: "Wilhansen Li"
Дата:
Сообщение: Re: Bytea network traffic: binary vs text result format