Re: [HACKERS] Binary cursors, numerics and other types
От | Tom Lane |
---|---|
Тема | Re: [HACKERS] Binary cursors, numerics and other types |
Дата | |
Msg-id | 1655.934826001@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Binary cursors, numerics and other types (Theo Kramer <theo@flame.co.za>) |
Список | pgsql-hackers |
Theo Kramer <theo@flame.co.za> writes: > I am using the libpq interface with binary cursors and am using numeric > fields. There seems to be no conversion routines available in the > front end library for numeric types. Am I missing something or do > I have to roll my own from numeric.c as per the backend? > I also can't find anything in libpq on dates. > Should appropriate conversion routines exist in libpq? It is not libpq's job to try to deal with binary data from the server --- for one thing, libpq may be compiled on a different architecture with a different representation than the server is (wrong endianness, different floating point format, etc). libpq doesn't even have any way of finding out whether a conversion is needed, let alone doing it. In the current scheme of things, binary cursors are of very limited use, and you are *really* foolish if you try to use them for anything except the most primitive data types like "int4". Your code will break without warning whenever Jan feels like changing the internal representation of numeric, as I believe he intends to do soon. We have never guaranteed that the internal representation of date/time types is frozen, either --- Thomas has been heard muttering about replacing timestamp with datetime, for example. There has been some talk of creating a CORBA interface to Postgres, which would make use of binary representations for the basic data types safer, since I believe CORBA offers facilities for cross-platform transfer of binary integers (floats too? not sure). But I don't think that would extend to nonstandard Postgres datatypes. regards, tom lane
В списке pgsql-hackers по дате отправления: