Hi all,
while implementing the protocol 3.0 I could get the data in text mode
setting the format to 0. (Thanks all for helping me out with flush message)
Now, I want to test the binary format. While some primitive types are
easy to realize, for example a int4 field will be encoded in 4 bytes,
I don't know how other types, like date, time, timestamp, text will be
encoded in binary format.
I tried to find in the code how it would be encoded, but I end up in
some dinamically called functions to do the output and I don't know
where this functions are defined.
Can you provide me some tips where the functions are or the binary
format used to encode the types?
While writing this mail, I saw the docs about binary types... So, my
assumption about int4 be encoded in 4 bytes may be wrong? I mean, the
return of an int4 value, for example 12345 in text would be the chars
12345, but in binary format would be the bytes of 1 2 3 4 5?? Instead of
a 4 bytes int4 value?
The first 4 bytes of bytea is its length? I think I saw something about
this in the code. So in the example below I would get a first 4 bytes
containing the length (5) of the bytes?
Also, just question:
If I have a field which has binary type and I use the extended protocol
to set all result fields to text, will this field also be sent in text,
regardless its type?
Thanks in advance!
--
Regards,
Francisco Figueiredo Jr.
------
"My grandfather once told me that there are two
kinds of people: those
who work and those who take the credit. He told me
to try to be in the
first group; there was less competition there."
- Indira Gandhi