|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectweka.core.converters.AbstractSaver
weka.core.converters.DatabaseSaver
public class DatabaseSaver
Writes to a database (tested with MySQL, InstantDB, HSQLDB). Available options are: -T
Field Summary | |
---|---|
private java.lang.String[] |
columnNames
|
private java.lang.String |
columnNamesStr
|
private DatabaseConnection |
databaseConnection
The database connection |
protected int |
dbWriteMode
|
static int |
DELETE_INSERT
|
static int |
DROP_INSERT
|
static int |
INSERT
|
protected java.lang.String[] |
keyColumnNames
|
private int |
m_count
counts the rowsand used as a primary key value |
private java.lang.String |
m_createDouble
The database specific type for a double (read in from the properties file) |
private java.lang.String |
m_createInt
The database specific type for an int (read in from the properties file) |
private java.lang.String |
m_createText
The database specific type for a string (read in from the properties file) |
private boolean |
m_id
Flag indicating if a primary key column should be added |
private java.lang.String |
m_idColumn
The name of the primary key column that will be automatically generated (if enabled). |
private java.lang.String |
m_inputFile
An input arff file (for command line use) |
private java.lang.String |
m_tableName
The name of the tablein which the instances should be stored |
private boolean |
m_tabName
Flag indicating whether the default name of the table is the relaion name or not. |
protected static java.util.Properties |
PROPERTIES
Properties associated with the database connection |
protected static java.lang.String |
PROPERTY_FILE
The property file for the database connection |
static int |
UPDATE_INSERT
|
protected java.lang.String |
version
|
protected java.lang.String |
versionColumnName
|
protected boolean |
versioning
|
Fields inherited from class weka.core.converters.AbstractSaver |
---|
CANCEL, m_retrieval, STRUCTURE_READY, WAIT, WRITE |
Fields inherited from interface weka.core.converters.Saver |
---|
BATCH, INCREMENTAL, NONE |
Constructor Summary | |
---|---|
DatabaseSaver()
Constructor |
Method Summary | |
---|---|
java.lang.String |
autoKeyGenerationTipText()
Returns the tip text fo this property |
void |
cancel()
Cancels the incremental saving process and tries to drop the table if the write mode is CANCEL. |
void |
connectToDatabase()
Opens a connection to the database |
boolean |
getAutoKeyGeneration()
Gets whether or not a primary key will be generated automatically |
int |
getDbWriteMode()
|
java.lang.String[] |
getKeyColumnNames()
|
java.lang.String[] |
getOptions()
Gets the setting |
boolean |
getRelationForTableName()
Gets whether or not the relation name is used as name of the table |
java.lang.String |
getTableName()
Gets the table's name |
java.lang.String |
getUrl()
Gets the database URL |
java.lang.String |
getUser()
Gets the database user |
java.lang.String |
getVersion()
|
java.lang.String |
getVersionColumnName()
|
java.lang.String |
globalInfo()
Returns a string describing this Saver |
boolean |
isKeyColumnName(java.lang.String columnName)
|
boolean |
isVersioning()
|
java.util.Enumeration |
listOptions()
Lists the available options |
static void |
main(java.lang.String[] options)
Main method. |
java.lang.String |
passwordTipText()
Returns the tip text fo this property |
private void |
prepareStructure()
|
private void |
printException(java.lang.Exception ex)
Prints an exception |
java.lang.String |
relationForTableNameTipText()
Returns the tip text fo this property |
void |
resetOptions()
Resets the Saver ready to save a new data set |
void |
setAutoKeyGeneration(boolean flag)
En/Dis-ables the automatic generation of a primary key |
private void |
setColumnNamesStr()
|
void |
setDbWriteMode(int dbWriteMode)
|
void |
setDbWriteMode(java.lang.String dbWriteMode)
|
void |
setDestination()
Sets the database url using the DatabaseUtils file |
void |
setDestination(java.sql.Connection connection)
Sets the database url using the given connection |
void |
setDestination(java.lang.String url)
Sets the database url |
void |
setDestination(java.lang.String url,
java.lang.String userName,
java.lang.String password)
Sets the database url |
void |
setKeyColumnNames(java.lang.String[] keyColumnNames)
|
void |
setOptions(java.lang.String[] options)
Sets the options. |
void |
setPassword(java.lang.String password)
Sets the database password |
void |
setRelationForTableName(boolean flag)
En/Dis-ables that the relation name is used for the name of the table (default enabled). |
void |
setTableName(java.lang.String tn)
Sets the table's name |
void |
setUrl(java.lang.String url)
Sets the database URL |
void |
setUser(java.lang.String user)
Sets the database user |
void |
setVersion(java.lang.String version)
|
void |
setVersionColumnName(java.lang.String versionColumnName)
|
void |
setVersioning(boolean versioning)
|
java.lang.String |
tableNameTipText()
Returns the tip text fo this property |
private void |
updateInstance(weka.core.Instance inst)
|
java.lang.String |
urlTipText()
Returns the tip text fo this property |
java.lang.String |
userTipText()
Returns the tip text fo this property |
void |
writeBatch()
Writes a Batch of instances |
void |
writeIncremental(weka.core.Instance inst)
Saves an instances incrementally. |
private void |
writeInstance(weka.core.Instance inst)
|
private void |
writeStructure()
Writes the structure (header information) to a database by creating a new table. |
Methods inherited from class weka.core.converters.AbstractSaver |
---|
filePrefix, getFileExtension, getInstances, getRetrieval, getWriteMode, resetStructure, retrieveDir, setDestination, setDestination, setDir, setDirAndPrefix, setFile, setFilePrefix, setInstances, setRetrieval, setStructure, setWriteMode |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private DatabaseConnection databaseConnection
private java.lang.String m_tableName
private java.lang.String m_inputFile
private java.lang.String m_createText
private java.lang.String m_createDouble
private java.lang.String m_createInt
private java.lang.String m_idColumn
private int m_count
private boolean m_id
private boolean m_tabName
protected static java.lang.String PROPERTY_FILE
protected static java.util.Properties PROPERTIES
protected int dbWriteMode
protected java.lang.String[] keyColumnNames
protected boolean versioning
protected java.lang.String versionColumnName
protected java.lang.String version
public static final int DROP_INSERT
public static final int DELETE_INSERT
public static final int INSERT
public static final int UPDATE_INSERT
private java.lang.String columnNamesStr
private java.lang.String[] columnNames
Constructor Detail |
---|
public DatabaseSaver() throws java.lang.Exception
java.lang.Exception
- throws Exception if property file cannot be readMethod Detail |
---|
public void setDbWriteMode(java.lang.String dbWriteMode)
public void resetOptions()
resetOptions
in class weka.core.converters.AbstractSaver
public void cancel()
cancel
in class weka.core.converters.AbstractSaver
public java.lang.String globalInfo()
public void setTableName(java.lang.String tn)
tn
- the name of the tablepublic java.lang.String getTableName()
public java.lang.String tableNameTipText()
public void setAutoKeyGeneration(boolean flag)
boolean
- flagpublic boolean getAutoKeyGeneration()
public java.lang.String autoKeyGenerationTipText()
public void setRelationForTableName(boolean flag)
boolean
- flagpublic boolean getRelationForTableName()
public java.lang.String relationForTableNameTipText()
public void setUrl(java.lang.String url)
setUrl
in interface weka.core.converters.DatabaseConverter
the
- URLpublic java.lang.String getUrl()
getUrl
in interface weka.core.converters.DatabaseConverter
public java.lang.String urlTipText()
public void setUser(java.lang.String user)
setUser
in interface weka.core.converters.DatabaseConverter
the
- user namepublic java.lang.String getUser()
getUser
in interface weka.core.converters.DatabaseConverter
public java.lang.String userTipText()
public void setPassword(java.lang.String password)
setPassword
in interface weka.core.converters.DatabaseConverter
the
- passwordpublic java.lang.String passwordTipText()
public void setDestination(java.lang.String url, java.lang.String userName, java.lang.String password)
url
- the database urluserName
- the user namepassword
- the passwordpublic void setDestination(java.lang.String url)
url
- the database urlpublic void setDestination()
public void setDestination(java.sql.Connection connection)
public void connectToDatabase()
private void writeStructure() throws java.lang.Exception
java.lang.Exception
private void prepareStructure() throws java.lang.Exception
java.lang.Exception
private void setColumnNamesStr() throws java.lang.Exception
java.lang.Exception
private void writeInstance(weka.core.Instance inst) throws java.lang.Exception
java.lang.Exception
private void updateInstance(weka.core.Instance inst) throws java.lang.Exception
java.lang.Exception
public void writeIncremental(weka.core.Instance inst) throws java.io.IOException
writeIncremental
in interface weka.core.converters.Saver
writeIncremental
in class weka.core.converters.AbstractSaver
inst
- the instance to save
java.io.IOException
- throws IOEXception.public void writeBatch() throws java.io.IOException
writeBatch
in interface weka.core.converters.Saver
writeBatch
in class weka.core.converters.AbstractSaver
java.io.IOException
- throws IOExceptionprivate void printException(java.lang.Exception ex)
ex
- the exception to printpublic java.lang.String[] getOptions()
getOptions
in interface weka.core.OptionHandler
public java.util.Enumeration listOptions()
listOptions
in interface weka.core.OptionHandler
public void setOptions(java.lang.String[] options) throws java.lang.Exception
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |