Sindbad~EG File Manager
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>DbSequence::open()</title>
<link rel="stylesheet" href="apiReference.css" type="text/css" />
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
<link rel="start" href="index.html" title="Berkeley DB C++ API Reference" />
<link rel="up" href="seq.html" title="Chapter 12. The DbSequence Handle" />
<link rel="prev" href="seqinitial_value.html" title="DbSequence::initial_value()" />
<link rel="next" href="seqremove.html" title="DbSequence::remove()" />
</head>
<body>
<div xmlns="" class="navheader">
<div class="libver">
<p>Library Version 18.1.40</p>
</div>
<table width="100%" summary="Navigation header">
<tr>
<th colspan="3" align="center">
<span xmlns="http://www.w3.org/1999/xhtml">DbSequence::open()</span>
</th>
</tr>
<tr>
<td width="20%" align="left"><a accesskey="p" href="seqinitial_value.html">Prev</a> </td>
<th width="60%" align="center">Chapter 12.
The DbSequence Handle
</th>
<td width="20%" align="right"> <a accesskey="n" href="seqremove.html">Next</a></td>
</tr>
</table>
<hr />
</div>
<div class="sect1" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h2 class="title" style="clear: both"><a id="seqopen"></a>
<span>DbSequence::open()</span>
</h2>
</div>
</div>
</div>
<pre class="programlisting">#include <db_cxx.h>
int
DbSequence::open(DbTxn *txnid, Dbt *key, u_int32_t flags); </pre>
<p>
The <code class="methodname">DbSequence::open()</code> method opens the
sequence represented by the <span class="bold"><strong>key</strong></span>.
The key must be compatible with the underlying database specified
in the corresponding call to
<a class="xref" href="seqcreate.html" title="DbSequence">
<span>DbSequence</span>
</a>.
</p>
<p>
The <code class="methodname">DbSequence::open()</code> <span>
<span>
method either returns a non-zero error value or throws an
exception that encapsulates a non-zero error value on
failure, and returns 0 on success.
</span>
</span>
</p>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="idm139755609577616"></a>Parameters</h3>
</div>
</div>
</div>
<div class="sect3" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h4 class="title"><a id="idm139755609578864"></a>key</h4>
</div>
</div>
</div>
<p>
The <span class="bold"><strong>key</strong></span> specifies which
record in the database stores the persistent sequence
data.
</p>
</div>
<div class="sect3" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h4 class="title"><a id="idm139755609599072"></a>flags</h4>
</div>
</div>
</div>
<p>
The <span class="bold"><strong>flags</strong></span> parameter must
be set to 0 or by bitwise inclusively
<span class="bold"><strong>OR</strong></span>'ing together one or
more of the following values:
</p>
<div class="itemizedlist">
<ul type="disc">
<li>
<p>
<code class="literal">DB_CREATE</code>
</p>
<p>
Create the sequence. If the sequence does not
already exist and the <code class="literal">DB_CREATE</code>
flag is not specified, the
<code class="methodname">DbSequence::open()</code> method will
fail.
</p>
</li>
<li>
<p>
<code class="literal">DB_EXCL</code>
</p>
<p>
Return an error if the sequence already exists.
This flag is only meaningful when specified with
the <code class="literal">DB_CREATE</code> flag.
</p>
</li>
<li>
<p><a id="seqopen_DB_THREAD"></a>
<code class="literal">DB_THREAD</code>
</p>
<p>
Cause the <a class="link" href="seq.html" title="Chapter 12. The DbSequence Handle">DbSequence</a>
handle returned by <code class="methodname">DbSequence::open()</code> to be
<span class="emphasis"><em>free-threaded</em></span>; that is, usable by multiple
threads within a single address space. Note that if multiple threads
create multiple sequences using the same database handle that handle
must have been opened specifying this flag.
</p>
<p>
Be aware that enabling this flag will serialize
calls to DB when using the handle across
threads. If concurrent scaling is important to
your application we recommend opening separate
handles for each thread (and not specifying
this flag), rather than sharing handles between
threads.
</p>
</li>
</ul>
</div>
</div>
<div class="sect3" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h4 class="title"><a id="idm139755609563792"></a>txnid</h4>
</div>
</div>
</div>
<p>
If the operation is part of an application-specified transaction, the
<span class="bold"><strong>txnid</strong></span> parameter is a transaction
handle returned from <a class="xref" href="txnbegin.html" title="DbEnv::txn_begin()">
<span>DbEnv::txn_begin()</span>
</a>; if the
operation is part of a Berkeley DB Concurrent Data Store group, the
<span class="bold"><strong>txnid</strong></span> parameter is a handle returned
from <a class="xref" href="envcdsgroup_begin.html" title="DbEnv::cdsgroup_begin()">
<span>DbEnv::cdsgroup_begin()</span>
</a>;
otherwise NULL. If no transaction handle is specified, but the
operation occurs in a transactional database, the operation will be
implicitly transaction protected. Transactionally protected operations
on a <a class="link" href="seq.html" title="Chapter 12. The DbSequence Handle">DbSequence</a> handle
require the <a class="link" href="seq.html" title="Chapter 12. The DbSequence Handle">DbSequence</a>
handle itself be transactionally protected during its open if the open
creates the sequence.
</p>
</div>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="idm139755609638496"></a>Class</h3>
</div>
</div>
</div>
<p>
<a class="link" href="seq.html" title="Chapter 12. The DbSequence Handle">DbSequence</a>
</p>
</div>
<div class="sect2" lang="en" xml:lang="en">
<div class="titlepage">
<div>
<div>
<h3 class="title"><a id="idm139755609557952"></a>See Also</h3>
</div>
</div>
</div>
<p>
<a class="xref" href="seq.html#seqlist" title="Sequences and Related Methods">Sequences and Related Methods</a>
</p>
</div>
</div>
<div class="navfooter">
<hr />
<table width="100%" summary="Navigation footer">
<tr>
<td width="40%" align="left"><a accesskey="p" href="seqinitial_value.html">Prev</a> </td>
<td width="20%" align="center">
<a accesskey="u" href="seq.html">Up</a>
</td>
<td width="40%" align="right"> <a accesskey="n" href="seqremove.html">Next</a></td>
</tr>
<tr>
<td width="40%" align="left" valign="top">
<span>DbSequence::initial_value()</span>
</td>
<td width="20%" align="center">
<a accesskey="h" href="index.html">Home</a>
</td>
<td width="40%" align="right" valign="top">
<span>DbSequence::remove()</span>
</td>
</tr>
</table>
</div>
</body>
</html>
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists