<!--$Id: db_cxx.so,v 11.9 2000/03/22 22:02:14 bostic Exp $--> <!--Copyright (c) 1997,2007 Oracle. All rights reserved.--> <!--See the file LICENSE for redistribution information.--> <html> <head> <title>Berkeley DB Reference Guide: Release 3.0: the Db class for C++ and Java</title> <meta name="description" content="Berkeley DB: An embedded database programmatic toolkit."> <meta name="keywords" content="embedded,database,programmatic,toolkit,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,Java,C,C++"> </head> <body bgcolor=white> <table width="100%"><tr valign=top> <td><h3><dl><dt>Berkeley DB Reference Guide:<dd>Upgrading Berkeley DB Applications</dl></h3></td> <td align=right><a href="../upgrade.3.0/dbenv_cxx.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../upgrade.3.0/cxx.html"><img src="../../images/next.gif" alt="Next"></a> </td></tr></table> <p> <h3 align=center>Release 3.0: the Db class for C++ and Java</h3> <p>The static Db::open method and the DbInfo class have been removed in the Berkeley DB 3.0 release. The way to open a database file is to use the new Db constructor with two arguments, followed by set_XXX methods to configure the Db object, and finally a call to the new (nonstatic) Db::open(). In comparing the Berkeley DB 3.0 release open method with the 2.X static open method, the second argument is new. It is a database name, which can be null. The DbEnv argument has been removed, as the environment is now specified in the constructor. The open method no longer returns a Db, since it operates on one.</p> <p>Here's a C++ example opening a Berkeley DB database using the 2.X interface:</p> <blockquote><pre>// Note: by default, errors are thrown as exceptions Db *table; Db::open("lookup.db", DB_BTREE, DB_CREATE, 0644, dbenv, 0, &table);</pre></blockquote> <p>In the Berkeley DB 3.0 release, this code would be written as:</p> <blockquote><pre>// Note: by default, errors are thrown as exceptions Db *table = new Db(dbenv, 0); table->open("lookup.db", NULL, DB_BTREE, DB_CREATE, 0644);</pre></blockquote> <p>Here's a Java example opening a Berkeley DB database using the 2.X interface:</p> <blockquote><pre>// Note: errors are thrown as exceptions Db table = Db.open("lookup.db", Db.DB_BTREE, Db.DB_CREATE, 0644, dbenv, 0);</pre></blockquote> <p>In the Berkeley DB 3.0 release, this code would be written as:</p> <blockquote><pre>// Note: errors are thrown as exceptions Db table = new Db(dbenv, 0); table.open("lookup.db", null, Db.DB_BTREE, Db.DB_CREATE, 0644);</pre></blockquote> <p>Note that if the dbenv argument is null, the database will not exist within an environment.</p> <table width="100%"><tr><td><br></td><td align=right><a href="../upgrade.3.0/dbenv_cxx.html"><img src="../../images/prev.gif" alt="Prev"></a><a href="../toc.html"><img src="../../images/ref.gif" alt="Ref"></a><a href="../upgrade.3.0/cxx.html"><img src="../../images/next.gif" alt="Next"></a> </td></tr></table> <p><font size=1>Copyright (c) 1996,2007 Oracle. All rights reserved.</font> </body> </html>