1
<!--$Id: curdup.so,v 11.6 2001/03/01 15:57:49 bostic Exp $-->
2
<!--Copyright 1997-2001 by Sleepycat Software, Inc.-->
3
<!--All rights reserved.-->
6
<title>Berkeley DB Reference Guide: Duplicating a cursor</title>
7
<meta name="description" content="Berkeley DB: An embedded database programmatic toolkit.">
8
<meta name="keywords" content="embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++">
11
<a name="2"><!--meow--></a><a name="3"><!--meow--></a>
12
<table width="100%"><tr valign=top>
13
<td><h3><dl><dt>Berkeley DB Reference Guide:<dd>Access Methods</dl></h3></td>
14
<td align=right><a href="../../ref/am/curdel.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../reftoc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/am/join.html"><img src="../../images/next.gif" alt="Next"></a>
17
<h1 align=center>Duplicating a cursor</h1>
18
<p>Once a cursor has been initialized (for example, by a call to
19
<a href="../../api_c/dbc_get.html">DBcursor->c_get</a>), it can be thought of as identifying a particular
20
location in a database. The <a href="../../api_c/dbc_dup.html">DBcursor->c_dup</a> function permits an application to
21
create a new cursor that has the same locking and transactional
22
information as the cursor from which it is copied, and which optionally
23
refers to the same position in the database.
24
<p>In order to maintain a cursor position when an application is using
25
locking, locks are maintained on behalf of the cursor until the cursor is
26
closed. In cases when an application is using locking without
27
transactions, cursor duplication is often required to avoid
28
self-deadlocks. For further details, refer to
29
<a href="../../ref/lock/am_conv.html">Access method locking conventions</a>.
30
<table width="100%"><tr><td><br></td><td align=right><a href="../../ref/am/curdel.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../../reftoc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../../ref/am/join.html"><img src="../../images/next.gif" alt="Next"></a>
32
<p><font size=1><a href="http://www.sleepycat.com">Copyright Sleepycat Software</a></font>