Berkeley DB Java Edition
version 1.5.1

com.sleepycat.je.util
Class DbLoad

java.lang.Object
  |
  +--com.sleepycat.je.util.DbLoad

public class DbLoad
extends Object

Load a database from a dump file.

To load a database from a stream:

   DbLoad loader = new DbLoad();
   loader.setEnv(env);
   loader.setDbName(dbName);
   loader.setInputStream(stream);
   loader.setNoOverwrite(noOvrwr);
   loader.setTextFileMode(tfm);
   loader.load();

Because a DATA=END marker is used to terminate the dump of each database, multiple databases can be dumped and loaded using a single stream. The DbDump.dump() method leaves the stream positioned after the last line written and the load() method leaves the stream positioned after the last line read.


Constructor Summary
DbLoad()
          Create a DbLoad object.
 
Method Summary
 boolean load()
           
static void main(String[] argv)
          The main used by the DbLoad utility.
 void setDbName(String dbName)
          Set the database name to load.
 void setEnv(Environment env)
          Set the Environment to load from.
 void setInputReader(BufferedReader reader)
          Set the BufferedReader to load from.
 void setNoOverwrite(boolean noOverwrite)
          Set whether the load should overwrite existing data or not.
 void setTextFileMode(boolean textFileMode)
          Set whether the load data is in text file format.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DbLoad

public DbLoad()
Create a DbLoad object.

Method Detail

main

public static void main(String[] argv)
                 throws DatabaseException,
                        IOException
The main used by the DbLoad utility.

Parameters:
argv - The arguments accepted by the DbLoad utility.

usage: DbLoad -f input-file -n -V -T
              -c name=value
              -s database -h dbEnvHome
       

-f - the file to load from (in DbDump format)
-n - no overwrite mode. Do not overwrite existing data.
-V - display the version of the JE library.
-T - input file is in Text mode.

The -T option allows JE applications to easily load text files into databases.

The input must be paired lines of text, where the first line of the pair is the key item, and the second line of the pair is its corresponding data item.

A simple escape mechanism, where newline and backslash (\) characters are special, is applied to the text input. Newline characters are interpreted as record separators. Backslash characters in the text will be interpreted in one of two ways: If the backslash character precedes another backslash character, the pair will be interpreted as a literal backslash. If the backslash character precedes any other character, the two characters following the backslash will be interpreted as a hexadecimal specification of a single character; for example, \0a is a newline character in the ASCII character set.

For this reason, any backslash or newline characters that naturally occur in the text input must be escaped to avoid misinterpretation by db_load.

-c name=value - Specify configuration options ignoring any value they may have based on the input. The command-line format is name=value. See the Supported Keywords section below for a list of keywords supported by the -c option.

-s database - the database to load.
-h dbEnvHome - the directory containing the database environment.

Supported Keywords
version=N - specify the version of the input file. Currently only version 3 is supported.
format - specify the format of the file. Allowable values are "print" and "bytevalue".
dupsort - specify whether the database allows duplicates or not. Allowable values are "true" and "false".
type - specifies the type of database. Only "btree" is allowed.
database - specifies the name of the database to be loaded.

Throws:
DatabaseException - if a failure occurs.
IOException

setEnv

public void setEnv(Environment env)
Set the Environment to load from.

Parameters:
env - The environment.


setDbName

public void setDbName(String dbName)
Set the database name to load.

Parameters:
dbName - database name


setInputReader

public void setInputReader(BufferedReader reader)
Set the BufferedReader to load from.

Parameters:
reader - The BufferedReader.


setNoOverwrite

public void setNoOverwrite(boolean noOverwrite)
Set whether the load should overwrite existing data or not.

Parameters:
noOverwrite - True if existing data should not be overwritten.


setTextFileMode

public void setTextFileMode(boolean textFileMode)
Set whether the load data is in text file format.

Parameters:
textFileMode - True if the load data is in text file format.


load

public boolean load()
             throws IOException,
                    DatabaseException
IOException
DatabaseException

Berkeley DB Java Edition
version 1.5.1

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved.