Iterate-clsql
Jun. 8th, 2008 03:25 pmНаписал расширение для iterate, позволяющее делать циклы по запросам к базам данных (посредством clsql).
пара примеров:
-
(iter (for (id name) in-clsql-query "select id, name from users" on-database *users-database*) (format t "User with ID of ~A has name ~A.~%" id name)<)or equivalent
(iter (for columns in-clsql-query "select id, name from users" on-database *users-database*) (for (id name) = columns) (format t "User with ID of ~A has name ~A.~%" id name)) -
(let ((id 11)) (iter (for (x) in-clsql-query [select [id] :from :users :where [< [id] id]]) (collecting x)))
Код доступен (до тех пор, пока не найду более подходящего места) на http://mo3r.nm.ru/iterate-clsql/iterate-clsql.tar.gz, имеется описание.
UPD: код перехал на http://common-lisp.net/project/iterate-clsql/.