diff options
author | Dan Goodliffe <daniel.goodliffe@pressassociation.com> | 2017-01-04 17:54:29 +0000 |
---|---|---|
committer | Dan Goodliffe <daniel.goodliffe@pressassociation.com> | 2017-01-04 17:54:29 +0000 |
commit | 78c885ff3bcbb9c7e16f3fce29f1d0052aba3086 (patch) | |
tree | f67125295122714c8a0ad14e2f5a277e130dfd2a /libpqpp/pq-connection.cpp | |
parent | Use bulk select not cursor select for getId, far fewer operations (diff) | |
download | libdbpp-postgresql-78c885ff3bcbb9c7e16f3fce29f1d0052aba3086.tar.bz2 libdbpp-postgresql-78c885ff3bcbb9c7e16f3fce29f1d0052aba3086.tar.xz libdbpp-postgresql-78c885ff3bcbb9c7e16f3fce29f1d0052aba3086.zip |
Add PQ specific command options to control page size and the use of bulk -v- cursor selects
Diffstat (limited to 'libpqpp/pq-connection.cpp')
-rw-r--r-- | libpqpp/pq-connection.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libpqpp/pq-connection.cpp b/libpqpp/pq-connection.cpp index 1fadde3..5b560a9 100644 --- a/libpqpp/pq-connection.cpp +++ b/libpqpp/pq-connection.cpp @@ -99,11 +99,11 @@ PQ::Connection::ping() const DB::SelectCommand * PQ::Connection::newSelectCommand(const std::string & sql, const DB::CommandOptions * opts) { - // Yes, this is a hack - if (sql.find("libdbpp:no-cursor") != (std::string::size_type)-1) { + auto pqco = dynamic_cast<const CommandOptions *>(opts); + if (pqco && !pqco->useCursor) { return new BulkSelectCommand(this, sql, pstmntNo++, opts); } - return new CursorSelectCommand(this, sql, pstmntNo++); + return new CursorSelectCommand(this, sql, pstmntNo++, pqco); } DB::ModifyCommand * |