summaryrefslogtreecommitdiff
path: root/libpqpp/modifycommand.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libpqpp/modifycommand.cpp')
-rw-r--r--libpqpp/modifycommand.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/libpqpp/modifycommand.cpp b/libpqpp/modifycommand.cpp
new file mode 100644
index 0000000..14bfb16
--- /dev/null
+++ b/libpqpp/modifycommand.cpp
@@ -0,0 +1,26 @@
+#include "modifycommand.h"
+#include <stdlib.h>
+#include "connection.h"
+
+PQ::ModifyCommand::ModifyCommand(const Connection * conn, const std::string & sql, unsigned int no) :
+ DB::Command(sql),
+ DB::ModifyCommand(sql),
+ PQ::Command(conn, sql, no)
+{
+}
+
+PQ::ModifyCommand::~ModifyCommand()
+{
+}
+
+unsigned int
+PQ::ModifyCommand::execute(bool anc)
+{
+ prepare();
+ PGresult * res = PQexecPrepared(c->conn, stmntName.c_str(), values.size(), &values.front(), &lengths.front(), &formats.front(), 0);
+ c->checkResult(res, PGRES_COMMAND_OK, __PRETTY_FUNCTION__);
+ unsigned int rows = atoi(PQcmdTuples(res));
+ PQclear(res);
+ return rows;
+}
+