title: pqxx reuse / reactivate a work transaction
body: <p>I want to use a pqxx::work for multiple queries AND commitments, while the <em>commit</em> function prevents me from using it again.
  Here is a simple example :</p>
  
  <pre><code>pqxx::connection G_connexion("dbname=basetest user=usertest password=1234");
  pqxx::work G_work(G_connexion);
  
  int main(int argc, char* argv[]) {
      G_work.exec("insert into test.table1(nom) VALUES('foo');");
      G_work.commit();//until here, no problem
      G_work.exec("insert into test.table1(nom) VALUES('bar');"); //error, transaction already closed
      G_work.commit();
  }
  </code></pre>
  
  <p>When I try to insert the 'bar' value, after the commit, I get a pqxx::usage_error : <code>Error executing query.  Attempt to activate transaction&lt;READ COMMITTED&gt; which is already closed</code></p>
  
  <p>How can I avoid to close the connection after I commit the changes? Can I reset G_work with a succeeding equivalent of G_work=pqxx::work(G_connexion), or other?
  Also, one bad request should not crash the entire process, just the one in process (G_work still usable after a failure).</p>
  
  <p>I have to keep the same variable G_Work because it will be a global variable called from lots of places in the program.</p>