summaryrefslogtreecommitdiff
path: root/libpqpp/pq-bulkselectcommand.h
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2016-04-24 15:47:33 +0100
committerDan Goodliffe <dan@randomdan.homeip.net>2016-04-24 15:47:33 +0100
commit4076ca685941ac433bc91130e29449cef7858fba (patch)
tree5b219bd316ca89c72a0fa361da849214f312699a /libpqpp/pq-bulkselectcommand.h
parentIntroduce select base for different kinds of select (diff)
downloadlibdbpp-postgresql-4076ca685941ac433bc91130e29449cef7858fba.tar.bz2
libdbpp-postgresql-4076ca685941ac433bc91130e29449cef7858fba.tar.xz
libdbpp-postgresql-4076ca685941ac433bc91130e29449cef7858fba.zip
Support bulk selects which don't use cursors, always use of RETURNING
Diffstat (limited to 'libpqpp/pq-bulkselectcommand.h')
-rw-r--r--libpqpp/pq-bulkselectcommand.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/libpqpp/pq-bulkselectcommand.h b/libpqpp/pq-bulkselectcommand.h
new file mode 100644
index 0000000..aeda42d
--- /dev/null
+++ b/libpqpp/pq-bulkselectcommand.h
@@ -0,0 +1,29 @@
+#ifndef PQ_BULKSELECTCOMMAND_H
+#define PQ_BULKSELECTCOMMAND_H
+
+#include <selectcommand.h>
+#include "pq-selectbase.h"
+#include "pq-command.h"
+#include <vector>
+#include <map>
+
+namespace PQ {
+ class Connection;
+ class Column;
+ class BulkSelectCommand : public DB::SelectCommand, public SelectBase, public Command {
+ public:
+ BulkSelectCommand(Connection *, const std::string & sql, unsigned int no);
+ virtual ~BulkSelectCommand();
+
+ bool fetch() override;
+ void execute() override;
+
+ private:
+ mutable bool executed;
+ std::string preparedSql;
+ };
+}
+
+#endif
+
+