a1b78ec9f3
Now requires c++17. Headline: Easier, faster, neater: the transaction classes now have a stream method. You specify a query and the C++ types to which you want the fields converted, and you get to iterate over the rows. And thanks to C++14 structured bindings, you can read the fields straight into separate local variables: for (auto const [id, name]: tx.stream<int, std::string_view>("SELECT id, name FROM thing")) { process(id, name); } For super-fast access to a field's text-format contents, convert it to std::string_view. It'll give you an immediate reference to the buffer containing the field. Beware though: the buffer only holds that text for the one iteration. The next iteration will overwrite it. Full list of changes at: https://github.com/jtv/libpqxx/blob/7.1.2/NEWS
12 lines
311 B
Makefile
12 lines
311 B
Makefile
# $NetBSD: buildlink3.mk,v 1.10 2020/09/15 09:48:26 prlw1 Exp $
|
|
|
|
BUILDLINK_TREE+= libpqxx
|
|
|
|
.if !defined(LIBPQXX_BUILDLINK3_MK)
|
|
LIBPQXX_BUILDLINK3_MK:=
|
|
|
|
BUILDLINK_API_DEPENDS.libpqxx+= libpqxx>=7.1.2
|
|
BUILDLINK_PKGSRCDIR.libpqxx?= ../../databases/libpqxx
|
|
.endif # LIBPQXX_BUILDLINK3_MK
|
|
|
|
BUILDLINK_TREE+= -libpqxx
|