|
|||||||||
| Home >> All >> com >> flexstor >> ejb >> [ util overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
com.flexstor.ejb.util
Class FlexSqlPreparedStatement

java.lang.Objectcom.flexstor.ejb.util.FlexSqlPreparedStatement
- public class FlexSqlPreparedStatement
- extends java.lang.Object
FlexSqlPreparedStatement class dinamically creates a
java.sql.PreparedStatement (SELECT, INSERT, UPDATE and DELETE).
FlexSqlPreparedStatement constructs SQL statements of the following form:
SELECT field1, .., fieldN
[INTO new_table]
FROM table1, .., tableN
[WHERE (condition1 operand1 condition2) .. operandN-1 conditionN]
[SORT BY field1, .., fieldN]
[ORDER BY field1, .., fieldN]
INSERT INTO table
( field1, .., fieldN )
VALUES ( value1, .., valueN ) | select_statement
UPDATE table
SET field1 = value1, .., fieldN = valueN
[WHERE (condition1 operand1 condition2) .. operandN-1 conditionN]
DELETE FROM table
[WHERE (condition1 operand1 condition2) .. operandN-1 conditionN]
Where:
condition = field operand value | select_statement | nested condition
Notes:
Clauses in brackets ( [] ) are optional
Clauses separated by pipe ( | ) are alternatives
- Since:
- FLEXSTORdb 3.0
| Field Summary | |
private boolean |
bAddInto
|
private boolean |
bAddOrderBy
|
private boolean |
bAddSortBy
|
private boolean |
bAddWhere
|
static int |
DELETE
|
static int |
FIELD_TYPE_COLUMN
|
private java.util.Hashtable |
htFieldValueList
|
static int |
INSERT
|
private int |
nStatement
|
private java.lang.StringBuffer |
sbTempWhereClause
|
private java.lang.StringBuffer |
sbWhereClause
|
static int |
SELECT
|
private java.lang.String |
sNewTable
|
static int |
UPDATE
|
private java.util.Vector |
vFieldList
|
private java.util.Vector |
vOrderByFields
|
private java.util.Vector |
vSortByFields
|
private java.util.Vector |
vTableList
|
private java.util.Vector |
vTempWhereClause
|
private java.util.Vector |
vValueList
|
private java.util.Vector |
vValueStatementList
|
private java.util.Vector |
vWhereClause
|
| Constructor Summary | |
FlexSqlPreparedStatement(int nStatement)
|
|
| Method Summary | |
void |
addField(java.lang.String sField)
Adds one field for a SELECT or INSERT statement. |
void |
addFields(java.util.Vector vFields)
Adds multiple fields for a SELECT or INSERT statement. |
void |
addFieldsValues(java.util.Hashtable htFieldsValues)
Adds multiple fields/values to be set in an INSERT or UPDATE statement. |
void |
addFieldValue(java.lang.String sField,
int nType,
java.lang.String sValue)
Adds a single field/value to be set in an INSERT or UPDATE statement. |
void |
addIntoClause(java.lang.String sNewTable)
Adds the INTO new_table clause to the SELECT statement. |
void |
addOrderByClause(java.lang.String sField)
Adds a field to the ORDER BY clause to the SELECT statement. |
void |
addOrderByClause(java.util.Vector vFields)
Adds the ORDER BY clause to the SELECT statement. |
void |
addSortByClause(java.lang.String sField)
Adds a field to the SORT BY clause to the SELECT statement. |
void |
addSortByClause(java.util.Vector vFields)
Adds the SORT BY clause to the SELECT statement. |
void |
addTable(java.lang.String sTable)
Adds a table for a SELECT, INSERT, UPDATE or DELETE statement. |
void |
addTables(java.util.Vector vTables)
Adds multiple tables for a SELECT statement. |
void |
addValue(int nType,
java.lang.String sValue)
Adds a single value to be set in an INSERT statement. |
void |
addValue(java.util.Vector vSelectStatement)
Adds a SELECT statement for a INSERT statement. |
void |
addValues(java.util.Vector vValues)
Adds multiple values to be set in an INSERT statement. |
void |
addWhereClause()
Add the newly constructed WHERE clause to the SELECT, UPDATE or DELETE statement. |
void |
appendConditionToWhere(java.lang.String sExternalOp,
java.lang.String sField,
java.lang.String sInternalOp,
int nType,
java.lang.String sValue)
Appends a condition to a "in construction" WHERE clause. |
void |
appendInConditionToWhere(java.lang.String sExternalOp,
java.lang.String sField,
java.util.Vector vValues)
This method appends a IN condition to a "in construction" WHERE clause. |
void |
appendSelectConditionToWhere(java.lang.String sExternalOp,
java.util.Vector vSelectStatement)
Appends a condition to a "in construction" WHERE clause. |
void |
appendToWhereClause(java.lang.String sOperand)
Append a condition to a WHERE clause already added to the SELECT, UPDATE or DELETE statement. |
private java.util.Vector |
constructDelete()
|
private java.util.Vector |
constructInsert()
|
private java.util.Vector |
constructSelect()
|
private java.util.Vector |
constructUpdate()
|
void |
createConditionForWhere(java.lang.String sField,
java.lang.String sInternalOp,
int nType,
java.lang.String sValue)
Creates the first condition for a WHERE clause. |
void |
createInConditionForWhere(java.lang.String sField,
java.util.Vector vValues)
This method creates a IN condition for a "in construction" WHERE clause. |
void |
createSelectConditionForWhere(java.util.Vector vSelectStatement)
Creates a select condition as the first condition of a WHERE clause. |
void |
encloseWhereCondition()
Encloses between parenthesis a condition for a "in construction" WHERE clause. |
java.sql.PreparedStatement |
getPreparedStatement(java.sql.Connection connection)
Returns the java.sql.PreparedStatement object, ready for invoking the execute(), executeQuery() or executeUpdate() method. |
private java.sql.PreparedStatement |
getPreparedStatement(java.sql.Connection connection,
java.util.Vector vStatement)
This method takes a Vector of String[] (field type and value ) and replace each argument of the PreparedStatement with its corresponding value in the Vector. |
java.util.Vector |
getStatement()
Returns a statement created through the methods in this class. |
private java.lang.String[] |
replaceValueInSelect(int nType,
java.lang.String sValue)
This method takes a String of the form: ( SELECT cl_buck_0 FROM cl0_make_lu WHERE make LIKE 'Ch%' ) or nvl(( SELECT cl_buck_0 FROM cl0_make_lu WHERE make LIKE 'Ch%' ), 0) and returns two Strings of the form: saReturned[0] = ( SELECT cl_buck_0 FROM cl0_make_lu WHERE make LIKE ? ) or saReturned[0] = nvl(( SELECT cl_buck_0 FROM cl0_make_lu WHERE make LIKE ? ), 0) and saReturned[1] = Ch% |
java.lang.String |
toString()
Get a String representation of this statement. |
boolean |
whereClauseExists()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
SELECT
public static final int SELECT
- See Also:
- Constant Field Values
INSERT
public static final int INSERT
- See Also:
- Constant Field Values
UPDATE
public static final int UPDATE
- See Also:
- Constant Field Values
DELETE
public static final int DELETE
- See Also:
- Constant Field Values
FIELD_TYPE_COLUMN
public static final int FIELD_TYPE_COLUMN
- See Also:
- Constant Field Values
nStatement
private int nStatement
vTableList
private java.util.Vector vTableList
vFieldList
private java.util.Vector vFieldList
vValueList
private java.util.Vector vValueList
vValueStatementList
private java.util.Vector vValueStatementList
htFieldValueList
private java.util.Hashtable htFieldValueList
sNewTable
private java.lang.String sNewTable
vSortByFields
private java.util.Vector vSortByFields
vOrderByFields
private java.util.Vector vOrderByFields
sbWhereClause
private java.lang.StringBuffer sbWhereClause
vWhereClause
private java.util.Vector vWhereClause
sbTempWhereClause
private java.lang.StringBuffer sbTempWhereClause
vTempWhereClause
private java.util.Vector vTempWhereClause
bAddInto
private boolean bAddInto
bAddSortBy
private boolean bAddSortBy
bAddOrderBy
private boolean bAddOrderBy
bAddWhere
private boolean bAddWhere
| Constructor Detail |
FlexSqlPreparedStatement
public FlexSqlPreparedStatement(int nStatement)
| Method Detail |
addTable
public void addTable(java.lang.String sTable)
- Adds a table for a SELECT, INSERT, UPDATE or DELETE statement.
For a SELECT statement, this method could be called to add more than one
table into the FROM clause.
SELECT ... FROM table1, .., tableN INSERT INTO table UPDATE table DELETE FROM table
addTables
public void addTables(java.util.Vector vTables)
- Adds multiple tables for a SELECT statement.
SELECT ... FROM table1, .., tableN
addField
public void addField(java.lang.String sField)
- Adds one field for a SELECT or INSERT statement.
This method could be called several times for adding more fields.
SELECT field1, .., fieldN INSERT INTO ... ( field1, fieldN )
addFields
public void addFields(java.util.Vector vFields)
- Adds multiple fields for a SELECT or INSERT statement.
SELECT field1, .., fieldN INSERT INTO ... ( field1, fieldN )
addIntoClause
public void addIntoClause(java.lang.String sNewTable)
- Adds the INTO new_table clause to the SELECT statement.
INTO new_table
addSortByClause
public void addSortByClause(java.lang.String sField)
- Adds a field to the SORT BY clause to the SELECT statement.
This method could be called several times for adding more fields.
SORT BY field1, .., fieldN
addSortByClause
public void addSortByClause(java.util.Vector vFields)
- Adds the SORT BY clause to the SELECT statement.
SORT BY field1, .., fieldN
addOrderByClause
public void addOrderByClause(java.lang.String sField)
- Adds a field to the ORDER BY clause to the SELECT statement.
This method could be called several times for adding more fields.
ORDER BY field1, .., fieldN
addOrderByClause
public void addOrderByClause(java.util.Vector vFields)
- Adds the ORDER BY clause to the SELECT statement.
ORDER BY field1, .., fieldN
createConditionForWhere
public void createConditionForWhere(java.lang.String sField, java.lang.String sInternalOp, int nType, java.lang.String sValue)
- Creates the first condition for a WHERE clause.
The WHERE clause must be added to the statement by calling addWhereClause()
WHERE field1 operand1 value1
appendConditionToWhere
public void appendConditionToWhere(java.lang.String sExternalOp, java.lang.String sField, java.lang.String sInternalOp, int nType, java.lang.String sValue)
- Appends a condition to a "in construction" WHERE clause.
-WHERE field1 operand1 value1- OPERAND field2 operand2 value2
createSelectConditionForWhere
public void createSelectConditionForWhere(java.util.Vector vSelectStatement)
- Creates a select condition as the first condition of a WHERE clause.
The WHERE clause must be added to the statement by calling addWhereClause()
The argument must be a Vector returned by a call to FlexSqlPreparedStatement.getStatement()
containing a previously created SQL SELECT statement.
WHERE select field1, .., fieldN from table ...
appendSelectConditionToWhere
public void appendSelectConditionToWhere(java.lang.String sExternalOp, java.util.Vector vSelectStatement)
- Appends a condition to a "in construction" WHERE clause.
The argument must be a Vector returned by a call to FlexSqlPreparedStatement.getStatement()
containing a previously created SQL SELECT statement.
-WHERE select field1, .., fieldN from table ...- OPERAND select field1, .., fieldN from table ...
createInConditionForWhere
public void createInConditionForWhere(java.lang.String sField, java.util.Vector vValues)
- This method creates a IN condition for a "in construction" WHERE clause.
WHERE field IN ( value1, .., valueN )
appendInConditionToWhere
public void appendInConditionToWhere(java.lang.String sExternalOp, java.lang.String sField, java.util.Vector vValues)
- This method appends a IN condition to a "in construction" WHERE clause.
-WHERE field1 operand1 value1- OPERAND field IN ( value1, .., valueN )
encloseWhereCondition
public void encloseWhereCondition()
- Encloses between parenthesis a condition for a "in construction" WHERE clause.
WHERE (field1 operand1 value1)
addWhereClause
public void addWhereClause()
- Add the newly constructed WHERE clause to the SELECT, UPDATE or DELETE statement.
-SELECT ...- WHERE condition1 -UPDATE ...- WHERE condition1 -DELETE FROM ...- WHERE condition1
appendToWhereClause
public void appendToWhereClause(java.lang.String sOperand)
- Append a condition to a WHERE clause already added to the SELECT, UPDATE or DELETE statement.
-SELECT ... WHERE condition1- OPERAND condition2 -UPDATE ... WHERE condition1- OPERAND condition2 -DELETE FROM ... WHERE condition1- OPERAND condition2
addFieldValue
public void addFieldValue(java.lang.String sField, int nType, java.lang.String sValue)
- Adds a single field/value to be set in an INSERT or UPDATE statement.
This method could be called several times for adding more fields/values.
The sValue argument must be a valid String representation of the actual
field type defined in nType. If the type is:
FieldConstantsI.FIELD_TYPE_NUMBER sValue must be a String representing a java.lang.Integer
or java.lang.Long
FieldConstantsI.FIELD_TYPE_DATE sValue must be a String representating a java.util.Date
FieldConstantsI.FIELD_TYPE_STRING sValue must be a java.lang.String
FieldConstantsI.FIELD_TYPE_DATETIME sValue must be a String representating a java.util.Date
FieldConstantsI.FIELD_TYPE_TIME sValue must be a String representating a java.util.Date
-INSERT INTO table- ( field1, .., fieldN ) VALUES ( value1, .., valueN ) -UPDATE table- SET field1 = value1, .., fieldN = valueN
addFieldsValues
public void addFieldsValues(java.util.Hashtable htFieldsValues)
- Adds multiple fields/values to be set in an INSERT or UPDATE statement.
The value must be a valid String representation of the actual field type defined in nType.
If the type is:
FieldConstantsI.FIELD_TYPE_NUMBER sValue must be a String representing a java.lang.Integer
or java.lang.Long
FieldConstantsI.FIELD_TYPE_DATE sValue must be a String representating a java.util.Date
FieldConstantsI.FIELD_TYPE_STRING sValue must be a java.lang.String
FieldConstantsI.FIELD_TYPE_DATETIME sValue must be a String representating a java.util.Date
FieldConstantsI.FIELD_TYPE_TIME sValue must be a String representating a java.util.Date
-INSERT INTO table- ( field1, .., fieldN ) VALUES ( value1, .., valueN ) -UPDATE table- SET field1 = value1, .., fieldN = valueN
addValue
public void addValue(int nType,
java.lang.String sValue)
- Adds a single value to be set in an INSERT statement.
This method could be called several times for adding more values.
The sValue argument must be a valid String representation of the actual
field type defined in nType. If the type is:
FieldConstantsI.FIELD_TYPE_NUMBER sValue must be a String representing a java.lang.Integer
or java.lang.Long
FieldConstantsI.FIELD_TYPE_DATE sValue must be a String representating a java.util.Date
FieldConstantsI.FIELD_TYPE_STRING sValue must be a java.lang.String
FieldConstantsI.FIELD_TYPE_DATETIME sValue must be a String representating a java.util.Date
FieldConstantsI.FIELD_TYPE_TIME sValue must be a String representating a java.util.Date
-INSERT INTO table- VALUES ( value1, .., valueN )
addValues
public void addValues(java.util.Vector vValues)
- Adds multiple values to be set in an INSERT statement.
The value must be a valid String representation of the actual field type defined in nType.
If the type is:
FieldConstantsI.FIELD_TYPE_NUMBER sValue must be a String representing a java.lang.Integer
or java.lang.Long
FieldConstantsI.FIELD_TYPE_DATE sValue must be a String representating a java.util.Date
FieldConstantsI.FIELD_TYPE_STRING sValue must be a java.lang.String
FieldConstantsI.FIELD_TYPE_DATETIME sValue must be a String representating a java.util.Date
FieldConstantsI.FIELD_TYPE_TIME sValue must be a String representating a java.util.Date
-INSERT INTO table- VALUES ( value1, .., valueN )
addValue
public void addValue(java.util.Vector vSelectStatement)
- Adds a SELECT statement for a INSERT statement.
The argument must be a Vector returned by a call to FlexSqlPreparedStatement.getStatement()
containing a previously created SQL SELECT statement.
-INSERT INTO table ( field1, .., fieldN )- select field1, .., fieldN from table ...
getStatement
public java.util.Vector getStatement()
- Returns a statement created through the methods in this class.
constructSelect
private java.util.Vector constructSelect()
constructInsert
private java.util.Vector constructInsert()
constructUpdate
private java.util.Vector constructUpdate()
constructDelete
private java.util.Vector constructDelete()
getPreparedStatement
public java.sql.PreparedStatement getPreparedStatement(java.sql.Connection connection) throws java.sql.SQLException
- Returns the java.sql.PreparedStatement object, ready for invoking the execute(), executeQuery()
or executeUpdate() method.
getPreparedStatement
private java.sql.PreparedStatement getPreparedStatement(java.sql.Connection connection, java.util.Vector vStatement) throws java.sql.SQLException
- This method takes a Vector of String[] (field type and value ) and replace each argument
of the PreparedStatement with its corresponding value in the Vector.
whereClauseExists
public boolean whereClauseExists()
replaceValueInSelect
private java.lang.String[] replaceValueInSelect(int nType, java.lang.String sValue)
- This method takes a String of the form:
( SELECT cl_buck_0 FROM cl0_make_lu WHERE make LIKE 'Ch%' )
or
nvl(( SELECT cl_buck_0 FROM cl0_make_lu WHERE make LIKE 'Ch%' ), 0)
and returns two Strings of the form:
saReturned[0] = ( SELECT cl_buck_0 FROM cl0_make_lu WHERE make LIKE ? )
or
saReturned[0] = nvl(( SELECT cl_buck_0 FROM cl0_make_lu WHERE make LIKE ? ), 0)
and
saReturned[1] = Ch%
toString
public java.lang.String toString()
- Get a String representation of this statement.
|
|||||||||
| Home >> All >> com >> flexstor >> ejb >> [ util overview ] | PREV CLASS NEXT CLASS | ||||||||
SUMMARY: JAVADOC | SOURCE | DOWNLOAD | NESTED | FIELD | CONSTR | METHOD |
DETAIL: FIELD | CONSTR | METHOD | ||||||||
JAVADOC
com.flexstor.ejb.util.FlexSqlPreparedStatement