com.rapidminer.tools.jdbc
Class StatementCreator

java.lang.Object
  extended by com.rapidminer.tools.jdbc.StatementCreator

public class StatementCreator
extends java.lang.Object

Helper class to create SQL statements and escape column names.

Author:
Simon Fischer

Constructor Summary
StatementCreator(java.sql.Connection connection)
           
 
Method Summary
 java.lang.String makeClobCreator(java.lang.String columnName, int minLength)
           
 void makeColumnAdd(java.lang.StringBuilder b, AttributeRole role)
          This will create an add statement for the given role that can be used for constructing a table alteration.
 void makeColumnAlter(java.lang.StringBuilder b, AttributeRole role)
          This will create an alteration statement for the given role.
 java.lang.String makeColumnCreator(Attribute attribute)
           
 void makeColumnDrop(java.lang.StringBuilder b, Attribute attribute)
          This will create an add statement for the given role that can be used for constructing a table alteration.
 java.lang.String makeColumnIdentifier(Attribute attribute)
          Quotes and escapes the name of an attribute such that it can be used as an SQL column identifier.
 java.lang.String makeDeleteStatement(java.lang.String tableName)
          DELETE FROM ...
 java.lang.String makeDropStatement(java.lang.String tableName)
          DROP TABLE ...
 java.lang.String makeIdentifier(java.lang.String identifier)
          Quotes and escapes the given name such that it can be used as an SQL table or column identifier.
 java.lang.String makeInsertStatement(java.lang.String tableName, ExampleSet exampleSet)
          Creates an SQL INSERT statement for filling attributes into a table.
 java.lang.String makeIntegerCreator(java.lang.String columnName)
           
 java.lang.String makeSelectAllStatement(java.lang.String tableName)
          SELECT *
 java.lang.String makeSelectEmptySetStatement(java.lang.String tableName)
          Deprecated. You don't want to use this method. Use the table meta data.
 java.lang.String makeSelectSizeStatement(java.lang.String tableName)
          Selects count(*).
 java.lang.String makeSelectStatement(java.lang.String tableName, boolean distinct, java.lang.String... columns)
           
 java.lang.String makeTableCreator(Attributes attributes, java.lang.String tableName, int defaultVarcharLength)
          Creates an SQL statement for creating a table where each attribute is mapped to a column of an appropriate type.
 java.lang.String makeVarcharCreator(java.lang.String columnName, int minLength)
           
 void setDefaultVarcharLength(long defaultVarcharLength)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StatementCreator

public StatementCreator(java.sql.Connection connection)
                 throws java.sql.SQLException
Throws:
java.sql.SQLException
Method Detail

setDefaultVarcharLength

public void setDefaultVarcharLength(long defaultVarcharLength)

makeTableCreator

public java.lang.String makeTableCreator(Attributes attributes,
                                         java.lang.String tableName,
                                         int defaultVarcharLength)
                                  throws java.sql.SQLException
Creates an SQL statement for creating a table where each attribute is mapped to a column of an appropriate type.

Parameters:
defaultVarcharLength -
Throws:
java.sql.SQLException

makeIdentifier

public java.lang.String makeIdentifier(java.lang.String identifier)
Quotes and escapes the given name such that it can be used as an SQL table or column identifier.


makeInsertStatement

public java.lang.String makeInsertStatement(java.lang.String tableName,
                                            ExampleSet exampleSet)
                                     throws java.sql.SQLException
Creates an SQL INSERT statement for filling attributes into a table. This can be used to make a prepared statement where the i-th parameter is mapped to the i-th attribute in the example set.

Throws:
java.sql.SQLException

makeColumnAlter

public void makeColumnAlter(java.lang.StringBuilder b,
                            AttributeRole role)
                     throws java.sql.SQLException
This will create an alteration statement for the given role. That can be used for constructing an table alteration

Throws:
java.sql.SQLException

makeColumnAdd

public void makeColumnAdd(java.lang.StringBuilder b,
                          AttributeRole role)
                   throws java.sql.SQLException
This will create an add statement for the given role that can be used for constructing a table alteration.

Throws:
java.sql.SQLException

makeColumnDrop

public void makeColumnDrop(java.lang.StringBuilder b,
                           Attribute attribute)
                    throws java.sql.SQLException
This will create an add statement for the given role that can be used for constructing a table alteration.

Throws:
java.sql.SQLException

makeColumnCreator

public java.lang.String makeColumnCreator(Attribute attribute)

makeColumnIdentifier

public java.lang.String makeColumnIdentifier(Attribute attribute)
Quotes and escapes the name of an attribute such that it can be used as an SQL column identifier.


makeDropStatement

public java.lang.String makeDropStatement(java.lang.String tableName)
DROP TABLE ...

Parameters:
tableName -
Returns:

makeDeleteStatement

public java.lang.String makeDeleteStatement(java.lang.String tableName)
DELETE FROM ...

Parameters:
tableName -
Returns:

makeSelectAllStatement

public java.lang.String makeSelectAllStatement(java.lang.String tableName)
SELECT *


makeSelectStatement

public java.lang.String makeSelectStatement(java.lang.String tableName,
                                            boolean distinct,
                                            java.lang.String... columns)

makeSelectSizeStatement

public java.lang.String makeSelectSizeStatement(java.lang.String tableName)
Selects count(*).


makeSelectEmptySetStatement

@Deprecated
public java.lang.String makeSelectEmptySetStatement(java.lang.String tableName)
Deprecated. You don't want to use this method. Use the table meta data.

Makes a statement selecting all attributes but no rows. Can be used to fetch header meta data.


makeClobCreator

public java.lang.String makeClobCreator(java.lang.String columnName,
                                        int minLength)

makeVarcharCreator

public java.lang.String makeVarcharCreator(java.lang.String columnName,
                                           int minLength)

makeIntegerCreator

public java.lang.String makeIntegerCreator(java.lang.String columnName)


Copyright © 2001-2009 by Rapid-I