f you transaction-protect a cursor, then you must
            make sure that the cursor is closed before you either commit or
            abort the transaction. For example:
        </p>
      <pre class="programlisting">#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;

#include "db.h"

int
main(void)
{
    DBT key, data;
    DBC *cursorp;
    DB_TXN *txn = NULL;
    int ret, c_ret;
    char *replacementString = "new string";

    ...
    /* environment and db handle creation omitted */
    ...

    /* Ge