mirror of
https://github.com/berkeleydb/libdb.git
synced 2024-11-16 17:16:25 +00:00
226 lines
9.7 KiB
HTML
226 lines
9.7 KiB
HTML
<?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>db_create</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="db.html" title="Chapter 2. The DB Handle" />
|
||
<link rel="prev" href="db_copy.html" title="db_copy" />
|
||
<link rel="next" href="dbdel.html" title="DB->del()" />
|
||
</head>
|
||
<body>
|
||
<div xmlns="" class="navheader">
|
||
<div class="libver">
|
||
<p>Library Version 11.2.5.3</p>
|
||
</div>
|
||
<table width="100%" summary="Navigation header">
|
||
<tr>
|
||
<th colspan="3" align="center">db_create</th>
|
||
</tr>
|
||
<tr>
|
||
<td width="20%" align="left"><a accesskey="p" href="db_copy.html">Prev</a> </td>
|
||
<th width="60%" align="center">Chapter 2.
|
||
The DB Handle
|
||
</th>
|
||
<td width="20%" align="right"> <a accesskey="n" href="dbdel.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="dbcreate"></a>db_create</h2>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<pre class="programlisting">#include <db.h>
|
||
|
||
int db_create(DB **dbp, DB_ENV *dbenv, u_int32_t flags); </pre>
|
||
<p>
|
||
The <code class="function">db_create()</code> function creates a <a class="link" href="db.html" title="Chapter 2. The DB Handle">DB</a>
|
||
structure that is the handle for a Berkeley DB database. This function allocates memory for the
|
||
structure, returning a pointer to the structure in the memory to which
|
||
<span class="bold"><strong>dbp</strong></span> refers. To release the allocated memory and
|
||
discard the handle, call the <a class="xref" href="dbclose.html" title="DB->close()">DB->close()</a>,
|
||
<a class="xref" href="dbremove.html" title="DB->remove()">DB->remove()</a>,
|
||
<a class="xref" href="dbrename.html" title="DB->rename()">DB->rename()</a>, or
|
||
<a class="xref" href="dbverify.html" title="DB->verify()">DB->verify()</a> methods.
|
||
</p>
|
||
<p>
|
||
DB handles are free-threaded if the
|
||
<a class="link" href="envopen.html#envopen_DB_THREAD">DB_THREAD</a> flag is specified to
|
||
the <a class="xref" href="dbopen.html" title="DB->open()">DB->open()</a> method when the database is opened or
|
||
if the database environment in which the database is opened is free-threaded. The handle
|
||
should not be closed while any other handle that refers to the database is in use; for
|
||
example, database handles must not be closed while cursor handles into the database remain
|
||
open, or transactions that include operations on the database have not yet been committed
|
||
or aborted. Once the <a class="xref" href="dbclose.html" title="DB->close()">DB->close()</a>,
|
||
<a class="xref" href="dbremove.html" title="DB->remove()">DB->remove()</a>,
|
||
<a class="xref" href="dbrename.html" title="DB->rename()">DB->rename()</a>, or
|
||
<a class="xref" href="dbverify.html" title="DB->verify()">DB->verify()</a>
|
||
methods are called, the handle may not be accessed again, regardless of the method's return.
|
||
</p>
|
||
<p>
|
||
The DB handle contains a special field, <code class="literal">app_private</code>,
|
||
which is declared as type <code class="literal">void *</code>. This field is provided for the use
|
||
of the application program. It is initialized to NULL and is not further used by
|
||
Berkeley DB in any way.
|
||
</p>
|
||
<p>
|
||
The <code class="literal">db_create</code> function returns a non-zero error value on failure
|
||
and 0 on success.
|
||
</p>
|
||
<div class="sect2" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h3 class="title"><a id="idp57423848"></a>Parameters</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="idp57424264"></a>dbp</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>
|
||
The <span class="bold"><strong>dbp</strong></span> parameter references the
|
||
memory into which the returned structure pointer is stored.
|
||
</p>
|
||
</div>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="idp57404008"></a>dbenv</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>
|
||
<span>If the <span class="bold"><strong>dbenv</strong></span> parameter is NULL,</span>
|
||
|
||
the database is standalone; that is, it is not part of any Berkeley DB
|
||
environment.
|
||
</p>
|
||
<p>
|
||
<span>
|
||
If the <span class="bold"><strong>dbenv</strong></span> parameter is not NULL,
|
||
</span>
|
||
|
||
the database is created within the specified Berkeley DB environment.
|
||
The database access methods automatically make calls to the other
|
||
subsystems in Berkeley DB, based on the enclosing environment. For
|
||
example, if the environment has been configured to use locking, the
|
||
access methods will automatically acquire the correct locks when
|
||
reading and writing pages of the database.
|
||
</p>
|
||
</div>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="idp57443000"></a>flags</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>
|
||
The <span class="bold"><strong>flags</strong></span> parameter must be set to 0 or the following value:
|
||
</p>
|
||
<div class="itemizedlist">
|
||
<ul type="disc">
|
||
<li>
|
||
<p><a id="dbcreate_DB_XA_CREATE"></a>
|
||
<code class="literal">DB_XA_CREATE</code>
|
||
</p>
|
||
<p>
|
||
Instead of creating a standalone database, create a database intended
|
||
to be accessed via applications running under an X/Open conformant
|
||
Transaction Manager. The database will be opened in the environment
|
||
specified by the OPENINFO parameter of the GROUPS section of the
|
||
ubbconfig file. See the <a href="../../programmer_reference/xa_xa_intro.html" class="olink">XA Introduction</a> section in the Berkeley DB Reference Guide for
|
||
more information.
|
||
</p>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sect2" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h3 class="title"><a id="idp57442000"></a>Errors</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>
|
||
The <code class="function">db_create()</code> function may fail and return one of the following non-zero
|
||
errors:
|
||
</p>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="idp57435008"></a>EINVAL</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>
|
||
An invalid flag value or parameter was specified.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
<div class="sect2" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h3 class="title"><a id="idp57424552"></a>Class</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>
|
||
<a class="link" href="db.html" title="Chapter 2. The DB Handle">DB</a>
|
||
</p>
|
||
</div>
|
||
<div class="sect2" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h3 class="title"><a id="idp57427688"></a>See Also</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>
|
||
<a class="xref" href="db.html#dblist" title="Database and Related Methods">Database 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="db_copy.html">Prev</a> </td>
|
||
<td width="20%" align="center">
|
||
<a accesskey="u" href="db.html">Up</a>
|
||
</td>
|
||
<td width="40%" align="right"> <a accesskey="n" href="dbdel.html">Next</a></td>
|
||
</tr>
|
||
<tr>
|
||
<td width="40%" align="left" valign="top">db_copy </td>
|
||
<td width="20%" align="center">
|
||
<a accesskey="h" href="index.html">Home</a>
|
||
</td>
|
||
<td width="40%" align="right" valign="top"> DB->del()</td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</body>
|
||
</html>
|