Dear libpqxx people, Jeroen.
Many thanks for the great library. It is so good that it has influenced me
to choose PostgreSQL, even though I am more of a MySQL person. The c++
library makes a real difference!
To speed up repetitive queries, I'm using a prepared query that has 3 fields
that each may or not be NULL. Prepared queries can deal with NULL fields, so
that is good.
However, I'm having a hard time trying to pass a NULL at runtime. Viz:
d_work->prepared("insertEvent")(1)(2)(3);
This is valid, and works, and so do the 7 other combinations:
d_work->prepared("insertEvent")()()();
d_work->prepared("insertEvent")()()(1);
d_work->prepared("insertEvent")()(1)(1);
...
However, I'd hate to have to write out these 8 separate forms, so what I try
to do is:
pqxx::prepare::invocation invo = d_work->prepared("insertEvent");
if(parentID)
invo(*parentID);
else
invo();
if(live)
invo(*live);
else
invo();
etc. But this very much doesn't work, it says it doesn't know of a ''
prepared event. I think d_work->prepared doesn't really return a
pqxx::prepare::invocation but some kind of megacomplicated descendant of it?
Is there another way to pass a NULL? Something like this would be cool:
d_work->prepared("insertEvent")(parentID ? *parentID : NULL)(live ? *live :
NULL)()
Sadly this doesn't work:
d_work->prepared("insertEvent")(parentID ? *parentID : )(live ? *live : )()
Any help would be appreciated!
Bert
--
http://www.PowerDNS.com Open source, database driven DNS Software
http://netherlabs.nl Open and Closed source services
_______________________________________________
Libpqxx-general mailing list
[email protected]
http://gborg.postgresql.org/mailman/listinfo/libpqxx-general