On Mon, Mar 19, 2012 at 1:13 AM, Peter Bex peter@xs4all.nl wrote:
On Sun, Mar 18, 2012 at 11:42:44PM -0700, Matt Welland wrote:
How do I do the equivalent of pg:query-for-each with the new api? It must
be simple but I am confused. Any kind soul willing to point me in the
right
direction?
I'm not 100% sure what the old procedure did again, but this is probably
what you want:
(row-for-each*
(lambda (a b c)
(printf Got a = ~A, b = ~A, c = ~A\n a b c))
(query conn SELECT a, b, c FROM foo))
If you prefer to get the arguments in a list, use the version
without a star:
(row-for-each
(lambda (tuple)
(printf Got tuple = ~A\n tuple))
(query conn SELECT a, b, c FROM foo))
Yup, I think that is what I want. Once I saw your example it became
apparent that (query ...) is similar to prepare in the perl dbi api,
however I think I was confused since the paragraph describing query also
mentions prepare. As far as I can tell there is actually no prepare
statement.
If the docs are unclear, I'd appreciate it if you can help me to
improve them.
Perhaps a sentence clarifying what query does would help. An example
where the query is done prior to the row-for-each would probably have
triggered understanding for me.
(let ((sth (query conn SELECT a,b,c FROM foo)))
(row-for-each
(lambda (tuple)
(print tuple))
sth))
On the other hand just removing or explaining the reference to prepare in
the query description is probably enough.
Thanks for the reply and for maintaining the postgresql egg!
Cheers,
Peter
--
http://sjamaan.ath.cx
--
The process of preparing programs for a digital computer
is especially attractive, not only because it can be economically
and scientifically rewarding, but also because it can be an aesthetic
experience much like composing poetry or music.
-- Donald Knuth
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users