On Thu, 6 Apr 2006, Eugene E. wrote: > Stephan Szabo wrote: > > On Wed, 5 Apr 2006, Eugene E. wrote: > > > > > >>Stephan Szabo wrote: > >> > >>>On Tue, 4 Apr 2006, Eugene E. wrote: > >>> > >>> > >>> > >>>>Stephan Szabo wrote: > >>>> > >>>> > >>>>>On Fri, 31 Mar 2006, Eugene E. wrote: > >>>>> > >>>>> > >>>>> > >>>>> > >>>>>>Peter Eisentraut wrote: > >>>>>> > >>>>>> > >>>>>> > >>>>>>>Eugene E. wrote: > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>>>the problem is: you'll get this four byte sequence '\000' _instead_ > >>>>>>>>of NUL-byte anyway. > >>>>>>> > >>>>>>> > >>>>>>>What you seem to be missing is that PostgreSQL data can be represented > >>>>>>>in textual and in binary form. What you in psql is the textual form. > >>>>>>>If you want the binary form you need to select it. Then you can pass > >>>>>>>the exact bytes back and forth. > >>>>>> > >>>>>>your sentence is not true. > >>>>>>I can not select exact bytes even if i use BYTEA type > >>>>> > >>>>> > >>>>>No, that is still using the textual form. If you use PQexecParams and > >>>>>set > >>>>>the last argument to show you want binary data, you should get binary > >>>>>data. > >> > >>ok > >>then i am using PQexecParams > >> > >>the following tiny program shows a wonderful lameness... > > > > > > What lameness? The fact that you're trying to use a binary (network order > > maybe) integer as a string? That's not the fault of PQexecParams but > > of the code calling it. > > You're right ! > That's is not a fault of PQexecParams at all. That's the fault of its > design.
No, I'd argue in this case that it was the fault of a programmer not paying enough attention/not thinking through what the api doc says. >(I pretty know why an integer has been not displayed, but why > they designed this function that way ? i do not know) What would you expect it to do given a single result format argument? If you want to propose a new function (set of functions) that have different behavior, make a coherent proposal. Statements like it should do X because I want it to aren't coherent proposals. Expect to get asked why bytea is special -- why should integer be passed as a string given that you may often want to do operations on the value which expect it as an actual number not the string representation of a number. ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings