Enhydra 5.1 API

com.lutris.dods.builder.generator.query
Class QueryBuilder

java.lang.Object
  |
  +--com.lutris.dods.builder.generator.query.QueryBuilder
All Implemented Interfaces:
Query

public class QueryBuilder
extends java.lang.Object
implements Query

	A QueryBuilder is a helper-object used by the xxxQuery classes.

	Stand-alone usage:

		QueryBuilder qb;
		qb = new QueryBuilder( "cats" );
			or
		qb = new QueryBuilder( "cats", "name, age" );
			...
		qb.addWhereClause( "owner.name", "Smith",
					QueryBuilder.NOT_NULL,
					QueryBuilder.EXACT_MATCH );
		qb.addWhereClause( "paws", 3, QueryBuilder.GREATER_THAN );
              qb.addTwoColumnWhereClause(
              	"cat.ownerId", "owner.Id", QueryBuilder.EQUAL );
		ResultSet rs = qb.executeQuery( conn );
			...
		qb.reset();

 

Version:
$Revision: 1.2 $
Author:
Jay Gunter

Field Summary
static java.lang.String CASE_INSENSITIVE_CONTAINS
           
static java.lang.String CASE_INSENSITIVE_ENDS_WITH
           
static java.lang.String CASE_INSENSITIVE_EQUAL
           
static java.lang.String CASE_INSENSITIVE_MATCH
           
static java.lang.String CASE_INSENSITIVE_STARTS_WITH
           
static java.lang.String CASE_SENSITIVE_CONTAINS
           
static java.lang.String CASE_SENSITIVE_ENDS_WITH
           
static java.lang.String CASE_SENSITIVE_MATCH
           
static java.lang.String CASE_SENSITIVE_STARTS_WITH
           
static java.lang.String CLOSE_IN
           
static java.lang.String DEFAULT_MATCHES_KEYWORD
           
static java.lang.String DEFAULT_SINGLE_WILDCARD
           
static java.lang.String DEFAULT_SINGLE_WILDCARD_ESCAPE
           
static boolean DEFAULT_USER_APPEND_WILDCARD
           
static java.lang.String DEFAULT_USER_SINGLE_WILDCARD
           
static java.lang.String DEFAULT_USER_SINGLE_WILDCARD_ESCAPE
           
static boolean DEFAULT_USER_TRIM_STRING
           
static java.lang.String DEFAULT_USER_WILDCARD
           
static java.lang.String DEFAULT_USER_WILDCARD_ESCAPE
           
static java.lang.String DEFAULT_WILDCARD
           
static java.lang.String DEFAULT_WILDCARD_ESCAPE
           
static java.lang.String DEFAULT_WILDCARD_ESCAPE_CLAUSE
           
static int DELETE_QUERY
           
static java.lang.String EQUAL
           
static boolean EXACT_MATCH
          Deprecated. Use addWhere() methods instead of addWhereClause() methods.
static java.lang.String GREATER_THAN
           
static java.lang.String GREATER_THAN_OR_EQUAL
           
static java.lang.String IS_NOT_NULL
           
static java.lang.String IS_NULL
           
static java.lang.String LESS_THAN
           
static java.lang.String LESS_THAN_OR_EQUAL
           
static java.lang.String NOT_EQUAL
           
static boolean NOT_EXACT
          Deprecated. Use addWhere() methods instead of addWhereClause() methods.
static boolean NOT_NULL
          Deprecated. Use addWhere() methods instead of addWhereClause() methods.
static boolean NULL_OK
          Deprecated. Use addWhere() methods instead of addWhereClause() methods.
static java.lang.String OPEN_EXISTS
           
static java.lang.String OPEN_IN
           
static java.lang.String OPEN_NOT_EXISTS
           
static java.lang.String OPEN_NOT_IN
           
static int SELECT_QUERY
           
static int UPDATE_QUERY
           
static java.lang.String USER_CASE_INSENSITIVE_MATCH
           
static java.lang.String USER_CASE_SENSITIVE_MATCH
           
static java.lang.String userConfigSingleWildcard
           
static java.lang.String userConfigSingleWildcardEscape
           
static java.lang.String userConfigWildcard
           
static java.lang.String userConfigWildcardEscape
           
 
Constructor Summary
QueryBuilder()
          Construct a QueryBuilder object.
QueryBuilder(RDBColumn[] fields)
          Construct a QueryBuilder object that will return specified fields of a table.
QueryBuilder(java.lang.String tableName)
          Construct a QueryBuilder object that will return all fields of a table.
QueryBuilder(java.lang.String tableName, java.lang.String fieldList)
          Construct a QueryBuilder object that will return specified fields of a table.
QueryBuilder(java.util.Vector fields)
          Construct a QueryBuilder object that will return specified fields of a table.
 
Method Summary
 void add(java.lang.String str)
          Deprecated. Use addEndClause() instead.
 void addEndClause(java.lang.String clause)
          Add a trailing clause (order by, group by, etc.) to the SQL command.
 boolean addMatchClause(RDBColumn column, java.lang.String value)
          Deprecated. Use comparison operators instead
 boolean addMatchClause(java.lang.String column, java.lang.String value)
          Deprecated. Use comparison operators instead
 void addOrderByColumn(RDBColumn column, java.lang.String direction)
          Add another field to the ORDER BY list.
 void addOrderByColumn(java.lang.String column, java.lang.String direction)
          Add another field to the ORDER BY list.
 void addTwoColumnWhereClause(java.lang.String column1, java.lang.String column2)
          Deprecated. Use addWhere(RDBColumn c1, RDBColumn c1) instead.
 void addTwoColumnWhereClause(java.lang.String column1, java.lang.String column2, java.lang.String cmp_op)
          Deprecated. Use addWhere(RDBColumn c1, RDBColumn c1, String cmp_op) instead.
 void addUpdateColumn(RDBColumn column, java.lang.Object value)
          Add a column to set by update query
 void addUpdateColumn(java.lang.String column, java.lang.Object value)
          Deprecated. Use addUpdateColumn(RDBColumn column, Object value) instead.
 void addUpdateSQL(RDBColumn column, java.lang.String sqlValue)
          addUpdateSQL
 void addUpdateSQL(java.lang.String column, java.lang.String sqlValue)
           
 boolean addUserMatchClause(RDBColumn column, java.lang.String value)
          Deprecated. Use comparison operators instead
 boolean addUserMatchClause(java.lang.String column, java.lang.String value)
          Deprecated. Use comparison operators instead
 void addWhere(RDBColumn column, java.math.BigDecimal value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column, boolean value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column, byte[] value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a byte array.
 void addWhere(RDBColumn column, java.sql.Date value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a Date.
 void addWhere(RDBColumn column, double value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column, float value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column, GenericDO value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column, int value)
          Add a where-clause that tests if a column is equal to a given String.
 void addWhere(RDBColumn column, int value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column, long value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column1, RDBColumn column2)
          Add a where-clause that tests if a column is equal to another column.
 void addWhere(RDBColumn column1, RDBColumn column2, java.lang.String cmp_op)
          Add a where-clause that compares a column against another column.
 void addWhere(RDBColumn column, java.lang.String value)
          Add a where-clause that tests if a column is equal to a given String.
 void addWhere(RDBColumn column, java.lang.String value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column, java.sql.Timestamp value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(RDBColumn column, java.sql.Time value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhere(java.lang.String fullClause)
           
 boolean addWhereClause(java.lang.String column, java.math.BigDecimal value, boolean nullOk)
          Deprecated. Use addWhere(RDBColumn c1, BigDecimal value, String cmp_op) instead.
 void addWhereClause(java.lang.String column, boolean value)
          Deprecated. Use addWhere(RDBColumn column, boolean value) instead.
 void addWhereClause(java.lang.String column, boolean value, java.lang.String cmp_op)
          Deprecated. Use addWhere(RDBColumn column, boolean value, String cmp_op ) instead.
 void addWhereClause(java.lang.String column, java.sql.Date date, java.lang.String cmp_op)
          Deprecated. Use addWhere(RDBColumn c1, Date value, String cmp_op) instead.
 void addWhereClause(java.lang.String column, double value)
          Deprecated. Use addWhere(RDBColumn column, double value) instead.
 void addWhereClause(java.lang.String column, double value, java.lang.String cmp_op)
          Deprecated. Use addWhere(RDBColumn column, double value, String cmp_op ) instead.
 void addWhereClause(java.lang.String column, float value)
          Deprecated. Use addWhere(RDBColumn column, float value) instead.
 void addWhereClause(java.lang.String column, float value, java.lang.String cmp_op)
          Deprecated. Use addWhere(RDBColumn column, float value, String cmp_op ) instead.
 void addWhereClause(java.lang.String column, int value)
          Deprecated. Use addWhere(RDBColumn column, int value) instead.
 void addWhereClause(java.lang.String column, int value, java.lang.String cmp_op)
          Deprecated. Use addWhere(RDBColumn column, int value, String cmp_op ) instead.
 void addWhereClause(java.lang.String column, long value)
          Deprecated. Use addWhere(RDBColumn column, long value) instead.
 void addWhereClause(java.lang.String column, long value, java.lang.String cmp_op)
          Deprecated. Use addWhere(RDBColumn column, long value, String cmp_op ) instead.
 void addWhereClause(java.lang.String column, java.lang.String value, java.lang.String cmp_op)
          Deprecated. Use addWhere(RDBColumn column, String value, String cmp_op ) instead.
 void addWhereClause(java.lang.String column, java.sql.Timestamp date, java.lang.String cmp_op)
           
 void addWhereClause(java.lang.String column, java.sql.Time date, java.lang.String cmp_op)
           
 void addWhereCloseParen()
          Close a previous addWhereOpenParen.
 void addWhereExists(QueryBuilder qb)
          QueryBuilder.addWhereExists( QueryBuilder )
 void addWhereIn(java.lang.Object val, java.lang.Object[] values)
          QueryBuilder.addWhereIn( Object, Object[] ) allows queries like select Person.Age from Person where Person.Name in ( "Bob", "Joe" ) with code like QueryBuilder qb = new QueryBuilder(); qb.select( PersonDO.Age ); String[] values = { "Bob", "Joe" }; qb.addWhereIn( PersonDO.Name, values ); or query select Person.Age from Person where "Tom" in ( Person.Surname, Person.Nick ) with code QueryBuilder qb = new QueryBuilder(); qb.select( PersonDO.Age ); RDBColumn[] values = { PersonDO.Surname, PersonDO.Nick }; qb.addWhereIn( "Tom", values );
 void addWhereIn(RDBColumn field, QueryBuilder qb)
          QueryBuilder.addWhereIn( RDBColumn, QueryBuilder ) allows queries like select Person.Name from Person where Person.City in ( select City.oid from City where City.Size > 1000 ) with code like QueryBuilder mainQuery = new QueryBuilder(); mainQuery.select( PersonDO.Name ); QueryBuilder subQuery = new QueryBuilder(); subQuery.select( CityDO.PrimaryKey ); subQuery.addWhere( CityDO.Size, 1000, QueryBuilder.GREATER_THAN ); mainQuery.addWhereIn( PersonDO.City, subQuery );
 void addWhereIsNotNull(RDBColumn column)
          Add a where-clause that tests if a column is null.
 void addWhereIsNotNull(java.lang.String column)
          Deprecated. Use addWhereIsNotNull(RDBColumn column ) instead.
 void addWhereIsNull(RDBColumn column)
          Add a where-clause that tests if a column is null.
 void addWhereIsNull(java.lang.String column)
          Deprecated. Use addWhereIsNull(RDBColumn column ) instead.
 void addWhereLeftOuter(RDBColumn column1, RDBColumn column2)
          Add a where-clause that imposes a LEFT OUTER JOIN to test if a column is equal to another column.
 void addWhereLower(RDBColumn column, java.lang.String value, java.lang.String cmp_op)
          Add a where-clause that compares a column against a String.
 void addWhereNotExists(QueryBuilder qb)
          QueryBuilder.addWhereNotExists( QueryBuilder )
 void addWhereNotIn(java.lang.Object val, java.lang.Object[] values)
          QueryBuilder.addWhereNotIn( Object, Object[] ) see addWhereIn( Object val, Object[] values ) for example
 void addWhereNotIn(RDBColumn field, QueryBuilder qb)
          QueryBuilder.addWhereNotIn( RDBColumn, QueryBuilder ) allows queries like select Person.Name from Person where Person.City not in ( select City.oid from City where City.Size > 1000 ) with code like QueryBuilder mainQuery = new QueryBuilder(); mainQuery.select( PersonDO.Name ); QueryBuilder subQuery = new QueryBuilder(); subQuery.select( CityDO.PrimaryKey ); subQuery.addWhere( CityDO.Size, 1000, QueryBuilder.GREATER_THAN ); mainQuery.addWhereNotIn( PersonDO.City, subQuery );
 void addWhereOpenParen()
          Specify that the next conditional expression (where-clause) should be preceded by '('.
 void addWhereOr()
           Specify that the next conditional expression (where-clause) should be preceded by OR instead of AND.
 void addWhereRightOuter(RDBColumn column1, RDBColumn column2)
          Add a where-clause that imposes a RIGHT OUTER JOIN to test if a column is equal to another column.
 int applyParameters(java.sql.PreparedStatement ps, int paramCount)
           
 void close()
           
static boolean compare(boolean a, boolean b, java.lang.String cmp_op)
          Wrapper for compare() method that takes Objects for arguments.
static boolean compare(boolean a, java.lang.Object b, java.lang.String cmp_op)
          Wrapper for compare() method that takes Objects for arguments.
static boolean compare(double a, double b, java.lang.String cmp_op)
          Wrapper for compare() method that takes Objects for arguments.
static boolean compare(double a, java.lang.Object b, java.lang.String cmp_op)
          Wrapper for compare() method that takes Objects for arguments.
static boolean compare(java.lang.Object a, java.lang.Object b, java.lang.String cmp_op)
          Compare two values according to a QueryBuilder comparison operator.
 boolean containsWildcards(java.lang.String value)
          Evaluate if string contains Wildcards WebDocWf extension for extended wildcard support
 java.lang.String convertUserSearchValue(java.lang.String value)
          Replace User wildcards with DB vendor specific wildcards according to dods.conf WebDocWf extension for extended wildcard support
 void debug()
          Sets debug flag to print the SQL statement just before its execution.
static void debugAll()
          Sets debug flag to print the SQL statement just before its execution.
 void distinct()
           
 java.sql.ResultSet executeQuery(DBConnection conn)
          Execute the PreparedStatement and return a JDBC ResultSet.
 int executeUpdate()
          Executes the SQL INSERT, UPDATE or DELETE statement
 RDBRow getNextRow()
           
 RDBRow[] getRows()
          Returns an array of RDBRow objects.
 java.lang.String getSelectClause()
          Get the Query select clause string Hack for implementing row counters
 java.lang.String getSQL()
           
 java.lang.String getSQLwithParms()
           
 java.sql.PreparedStatement getStatement()
          Return the JDBC PreparedStatement generated by prepareStatement().
 boolean getUserStringAppendWildcard()
          Get whether Querybuilder should append a wildcard at the end of match-strings WebDocWf extension for extended wildcard support
 java.lang.String getUserStringSingleWildcard()
          Get the user single wildcard WebDocWf extension for extended wildcard support
 java.lang.String getUserStringSingleWildcardEscape()
          Get the user single wildcard escape char WebDocWf extension for extended wildcard support
 boolean getUserStringTrim()
          Get whether Querybuilder trims the match strings WebDocWf extension for extended wildcard support
 java.lang.String getUserStringWildcard()
          Get the user wildcard WebDocWf extension for extended wildcard support
 java.lang.String getUserStringWildcardEscape()
          Get the user wildcard escape char WebDocWf extension for extended wildcard support
 java.lang.Object next(java.sql.ResultSet rs)
          WARNING! This method is disabled and should never be called.
 void reset()
          Reset the where-clause information.
 void select(RDBColumn field)
          Add a field to be returned by this QueryBuilder.
 void setDatabaseVendor()
          Set database vendor for the default logical database.
 void setDatabaseVendor(java.lang.String vendor)
           
 void setDeleteQuery()
           
 void setMaxRows(int x)
           
 void setSelectClause(java.lang.String newClause)
          Set the Query select clause (e.g.
 void setStringMatchDetails(java.lang.String match_keyword, java.lang.String wildcard)
          Set the string matching details for inexact string matches See dods.conf for details.
 void setStringMatchDetails(java.lang.String match_keyword, java.lang.String multi_wildcard, java.lang.String single_wildcard, java.lang.String single_wildcard_escape, java.lang.String multi_wildcard_escape, java.lang.String wildcard_escape_clause)
          Initialize the extended wildcard support WebDocWf extension for extended wildcard support
 void setUserStringAppendWildcard(boolean user_append_wildcard)
          Set whether Querybuilder should append a wildcard at the end of match-strings WebDocWf extension for extended wildcard support
 void setUserStringSingleWildcard(java.lang.String user_single_wildcard)
          Change the user single wildcard WebDocWf extension for extended wildcard support
 void setUserStringSingleWildcardEscape(java.lang.String user_single_wildcard_escape)
          Change the user single wildcard esacpe char WebDocWf extension for extended wildcard support
 void setUserStringTrim(boolean user_trim_string)
          Set whether Querybuilder should trim the match strings WebDocWf extension for extended wildcard support
 void setUserStringWildcard(java.lang.String user_wildcard)
          Change the user wildcard WebDocWf extension for extended wildcard support
 void setUserStringWildcardEscape(java.lang.String user_wildcard_escape)
          Change the user wildcard esacpe char WebDocWf extension for extended wildcard support
static java.lang.String stringReplace(java.lang.String s, java.lang.String find, java.lang.String replace)
          Replace a substring with another string.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EQUAL

public static final java.lang.String EQUAL
See Also:
Constant Field Values

NOT_EQUAL

public static final java.lang.String NOT_EQUAL
See Also:
Constant Field Values

LESS_THAN

public static final java.lang.String LESS_THAN
See Also:
Constant Field Values

LESS_THAN_OR_EQUAL

public static final java.lang.String LESS_THAN_OR_EQUAL
See Also:
Constant Field Values

GREATER_THAN

public static final java.lang.String GREATER_THAN
See Also:
Constant Field Values

GREATER_THAN_OR_EQUAL

public static final java.lang.String GREATER_THAN_OR_EQUAL
See Also:
Constant Field Values

IS_NULL

public static final java.lang.String IS_NULL
See Also:
Constant Field Values

IS_NOT_NULL

public static final java.lang.String IS_NOT_NULL
See Also:
Constant Field Values

OPEN_IN

public static final java.lang.String OPEN_IN
See Also:
Constant Field Values

OPEN_NOT_IN

public static final java.lang.String OPEN_NOT_IN
See Also:
Constant Field Values

OPEN_EXISTS

public static final java.lang.String OPEN_EXISTS
See Also:
Constant Field Values

OPEN_NOT_EXISTS

public static final java.lang.String OPEN_NOT_EXISTS
See Also:
Constant Field Values

CLOSE_IN

public static final java.lang.String CLOSE_IN
See Also:
Constant Field Values

CASE_SENSITIVE_CONTAINS

public static final java.lang.String CASE_SENSITIVE_CONTAINS
See Also:
Constant Field Values

CASE_INSENSITIVE_CONTAINS

public static final java.lang.String CASE_INSENSITIVE_CONTAINS
See Also:
Constant Field Values

CASE_SENSITIVE_STARTS_WITH

public static final java.lang.String CASE_SENSITIVE_STARTS_WITH
See Also:
Constant Field Values

CASE_INSENSITIVE_STARTS_WITH

public static final java.lang.String CASE_INSENSITIVE_STARTS_WITH
See Also:
Constant Field Values

CASE_SENSITIVE_ENDS_WITH

public static final java.lang.String CASE_SENSITIVE_ENDS_WITH
See Also:
Constant Field Values

CASE_INSENSITIVE_ENDS_WITH

public static final java.lang.String CASE_INSENSITIVE_ENDS_WITH
See Also:
Constant Field Values

CASE_INSENSITIVE_EQUAL

public static final java.lang.String CASE_INSENSITIVE_EQUAL
See Also:
Constant Field Values

CASE_SENSITIVE_MATCH

public static final java.lang.String CASE_SENSITIVE_MATCH
See Also:
Constant Field Values

CASE_INSENSITIVE_MATCH

public static final java.lang.String CASE_INSENSITIVE_MATCH
See Also:
Constant Field Values

USER_CASE_SENSITIVE_MATCH

public static final java.lang.String USER_CASE_SENSITIVE_MATCH
See Also:
Constant Field Values

USER_CASE_INSENSITIVE_MATCH

public static final java.lang.String USER_CASE_INSENSITIVE_MATCH
See Also:
Constant Field Values

NULL_OK

public static final boolean NULL_OK
Deprecated. Use addWhere() methods instead of addWhereClause() methods.

Null-acceptability indicator passed as 3rd arg to addWhereClause( String )

See Also:
Constant Field Values

NOT_NULL

public static final boolean NOT_NULL
Deprecated. Use addWhere() methods instead of addWhereClause() methods.

Null-acceptability indicator passed as 3rd arg to addWhereClause( String )

See Also:
Constant Field Values

EXACT_MATCH

public static final boolean EXACT_MATCH
Deprecated. Use addWhere() methods instead of addWhereClause() methods.

Wild-card indicator passed as 4th arg to addWhereClause( String )

See Also:
Constant Field Values

NOT_EXACT

public static final boolean NOT_EXACT
Deprecated. Use addWhere() methods instead of addWhereClause() methods.

Wild-card indicator passed as 4th arg to addWhereClause( String )

See Also:
Constant Field Values

DEFAULT_MATCHES_KEYWORD

public static final java.lang.String DEFAULT_MATCHES_KEYWORD
See Also:
Constant Field Values

DEFAULT_WILDCARD

public static final java.lang.String DEFAULT_WILDCARD
See Also:
Constant Field Values

DEFAULT_SINGLE_WILDCARD

public static final java.lang.String DEFAULT_SINGLE_WILDCARD
See Also:
Constant Field Values

DEFAULT_SINGLE_WILDCARD_ESCAPE

public static final java.lang.String DEFAULT_SINGLE_WILDCARD_ESCAPE
See Also:
Constant Field Values

DEFAULT_WILDCARD_ESCAPE

public static final java.lang.String DEFAULT_WILDCARD_ESCAPE
See Also:
Constant Field Values

DEFAULT_WILDCARD_ESCAPE_CLAUSE

public static final java.lang.String DEFAULT_WILDCARD_ESCAPE_CLAUSE
See Also:
Constant Field Values

DEFAULT_USER_WILDCARD

public static final java.lang.String DEFAULT_USER_WILDCARD
See Also:
Constant Field Values

DEFAULT_USER_SINGLE_WILDCARD

public static final java.lang.String DEFAULT_USER_SINGLE_WILDCARD
See Also:
Constant Field Values

DEFAULT_USER_SINGLE_WILDCARD_ESCAPE

public static final java.lang.String DEFAULT_USER_SINGLE_WILDCARD_ESCAPE
See Also:
Constant Field Values

DEFAULT_USER_WILDCARD_ESCAPE

public static final java.lang.String DEFAULT_USER_WILDCARD_ESCAPE
See Also:
Constant Field Values

DEFAULT_USER_APPEND_WILDCARD

public static final boolean DEFAULT_USER_APPEND_WILDCARD
See Also:
Constant Field Values

DEFAULT_USER_TRIM_STRING

public static final boolean DEFAULT_USER_TRIM_STRING
See Also:
Constant Field Values

userConfigWildcard

public static java.lang.String userConfigWildcard

userConfigSingleWildcard

public static java.lang.String userConfigSingleWildcard

userConfigSingleWildcardEscape

public static java.lang.String userConfigSingleWildcardEscape

userConfigWildcardEscape

public static java.lang.String userConfigWildcardEscape

SELECT_QUERY

public static final int SELECT_QUERY
See Also:
Constant Field Values

UPDATE_QUERY

public static final int UPDATE_QUERY
See Also:
Constant Field Values

DELETE_QUERY

public static final int DELETE_QUERY
See Also:
Constant Field Values
Constructor Detail

QueryBuilder

public QueryBuilder(java.util.Vector fields)
Construct a QueryBuilder object that will return specified fields of a table. Style 2 (see above.)

Parameters:
fields - Vector of RDBColumn objects, one for each column to be returned. Fields can refer to different tables.

QueryBuilder

public QueryBuilder(RDBColumn[] fields)
Construct a QueryBuilder object that will return specified fields of a table. Style 2 (see above.)

Parameters:
fields - array of RDBColumn objects, one for each column to be returned. Fields can refer to different tables.

QueryBuilder

public QueryBuilder()
Construct a QueryBuilder object. When no fields are specified in the constructor, you must use calls to select() to specify the RDBColumns that will be returned. This can be more convenient than constructing the Vector before calling the QueryBuilder(Vector) constructor. Style 2 (see above.)


QueryBuilder

public QueryBuilder(java.lang.String tableName)
Construct a QueryBuilder object that will return all fields of a table. Style 1 (see above.) WARNING: QueryBuilder objects created with this constructor cannot be used with the getNextRow() method.

See Also:
getNextRow

QueryBuilder

public QueryBuilder(java.lang.String tableName,
                    java.lang.String fieldList)
Construct a QueryBuilder object that will return specified fields of a table. Style 1 (see above.)

Parameters:
fieldList - Comma-separated string of field names to retrieve.
Method Detail

select

public void select(RDBColumn field)
Add a field to be returned by this QueryBuilder. Style 2 (see above.)

Parameters:
field - RDBColumn object to be returned. Fields can refer to different tables.

getRows

public RDBRow[] getRows()
                 throws QueryException
Returns an array of RDBRow objects.

Returns:
array of RDBRow objects.
Throws:
ATException - If the data is not accessible
BusinessRuleException - If x is invalid.
QueryException
See Also:
getNextRow

getNextRow

public RDBRow getNextRow()
                  throws QueryException
QueryException

next

public java.lang.Object next(java.sql.ResultSet rs)
                      throws java.sql.SQLException,
                             ObjectIdException
WARNING! This method is disabled and should never be called. It's implementation is forced by the Query interface. Use getNextRow instead().

Specified by:
next in interface Query
Parameters:
rs - JDBC result set from which the next object will be instantiated.
Throws:
ObjectIdException - If ObjectId was not found.
java.sql.SQLException - If a database access error occurs.

addWhereOr

public void addWhereOr()
 Specify that the next conditional expression (where-clause)
 should be preceded by OR instead of AND.  (AND is the default).
 For example:
          addWhereClause( "person.fname", "Bob", EQUAL );
          addWhereClause( "person.lname", "Smith", EQUAL );
          	produces
          person.fname = 'Bob' AND person.lname = 'Smith'
 But:
          addWhereClause( "person.fname", "Bob", EQUAL );
          addWhereOr();
          addWhereClause( "person.lname", "Smith", EQUAL );
          	produces
          person.fname = 'Bob' OR person.lname = 'Smith'
 
 Disallows 'OR OR'.
 Trailing ORs are removed by prepareStatement().

 


addWhereOpenParen

public void addWhereOpenParen()
Specify that the next conditional expression (where-clause) should be preceded by '('. Trailing OPEN_PARENs are removed by prepareStatement().


addWhereCloseParen

public void addWhereCloseParen()
Close a previous addWhereOpenParen. Automatically disallows bad sequences like 'OR )' and '( )'.


addWhere

public void addWhere(RDBColumn column,
                     GenericDO value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - int value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     byte[] value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a byte array.

Parameters:
column - A column (field) name to use as a search constraint.
value - byte array to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     java.sql.Time value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - int value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     java.sql.Timestamp value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - int value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     long value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - long value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     double value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - double value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     float value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - float value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     java.math.BigDecimal value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - BigDecimal value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     int value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - int value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     boolean value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - boolean value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     int value)
Add a where-clause that tests if a column is equal to a given String.

Parameters:
column - A column (field) name to use as a search constraint.
value - int value to compare against.

addWhereLower

public void addWhereLower(RDBColumn column,
                          java.lang.String value,
                          java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - String value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     java.lang.String value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a String.

Parameters:
column - A column (field) name to use as a search constraint.
value - String value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column,
                     java.lang.String value)
Add a where-clause that tests if a column is equal to a given String.

Parameters:
column - A column (field) name to use as a search constraint.
value - String value to compare against.

addWhere

public void addWhere(RDBColumn column,
                     java.sql.Date value,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against a Date.

Parameters:
column - A column (field) name to use as a search constraint.
value - Date value to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column1,
                     RDBColumn column2,
                     java.lang.String cmp_op)
Add a where-clause that compares a column against another column.

Parameters:
column1 - A column (field) name to use as a search constraint.
column2 - A column (field) name to use as a search constraint.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhere

public void addWhere(RDBColumn column1,
                     RDBColumn column2)
Add a where-clause that tests if a column is equal to another column.

Parameters:
column1 - A column (field) name to use as a search constraint.
column2 - A column (field) name to use as a search constraint.

addWhereIsNull

public void addWhereIsNull(RDBColumn column)
Add a where-clause that tests if a column is null.

Parameters:
column - A column (field) name to use as a search constraint.

addWhereIsNotNull

public void addWhereIsNotNull(RDBColumn column)
Add a where-clause that tests if a column is null.

Parameters:
column - A column (field) name to use as a search constraint.

addWhereIsNull

public void addWhereIsNull(java.lang.String column)
Deprecated. Use addWhereIsNull(RDBColumn column ) instead.

Add a where-clause that tests if a column is null.

Parameters:
column - A column (field) name to use as a search constraint.

addWhereIsNotNull

public void addWhereIsNotNull(java.lang.String column)
Deprecated. Use addWhereIsNotNull(RDBColumn column ) instead.

Add a where-clause that tests if a column is null.

Parameters:
column - A column (field) name to use as a search constraint.

addWhereRightOuter

public void addWhereRightOuter(RDBColumn column1,
                               RDBColumn column2)
Add a where-clause that imposes a RIGHT OUTER JOIN to test if a column is equal to another column.

Parameters:
column1 - A column (field) name to use as a search constraint.
column2 - A column (field) name to use as a search constraint.

addWhereLeftOuter

public void addWhereLeftOuter(RDBColumn column1,
                              RDBColumn column2)
Add a where-clause that imposes a LEFT OUTER JOIN to test if a column is equal to another column.

Parameters:
column1 - A column (field) name to use as a search constraint.
column2 - A column (field) name to use as a search constraint.

addTwoColumnWhereClause

public void addTwoColumnWhereClause(java.lang.String column1,
                                    java.lang.String column2,
                                    java.lang.String cmp_op)
Deprecated. Use addWhere(RDBColumn c1, RDBColumn c1, String cmp_op) instead.

 Add a where-clause to the SQL command.
 The where-clause compare the values of two columns
 using the specified comparison operator.
 E.g., we want to find cats with too many paws:
      column1 = "cat.paws"
      column2 = "animalNorms.catPaws"
      cmp_op  = QueryBuilder.GREATER_THAN
 generates the where-clause:
      cat.paws > animalNorms.catPaws
 and remembers the table names (cat, animalNorms)
 for inclusion in the from-clause.
 

Parameters:
column1 - A column (field) name to use as a search constraint.
column2 - Another column to compare against.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addTwoColumnWhereClause

public void addTwoColumnWhereClause(java.lang.String column1,
                                    java.lang.String column2)
Deprecated. Use addWhere(RDBColumn c1, RDBColumn c1) instead.

 Add a where-clause to the SQL command.
 The where-clause compare the values of two columns
 using the EQUAL operator.
 E.g., we want to find cats with the normal number of paws:
      column1 = "cat.paws"
      column2 = "animalNorms.catPaws"
 generates the where-clause:
      cat.paws = animalNorms.catPaws
 and remembers the table names (cat, animalNorms)
 for inclusion in the from-clause.

 

Parameters:
column1 - A column (field) name to use as a search constraint.
column2 - Another column to compare against.

stringReplace

public static java.lang.String stringReplace(java.lang.String s,
                                             java.lang.String find,
                                             java.lang.String replace)
Replace a substring with another string.

Parameters:
s - the original string.
find - the substring to replace.
replace - the replacement string.
Returns:
the resulting string after replacement. Returns null if any params are null. Returns original string if 'find' not found.

addWhereClause

public void addWhereClause(java.lang.String column,
                           java.lang.String value,
                           java.lang.String cmp_op)
Deprecated. Use addWhere(RDBColumn column, String value, String cmp_op ) instead.

Add a where-clause that compares a column against a string value to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The value to search for.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addMatchClause

public boolean addMatchClause(java.lang.String column,
                              java.lang.String value)
Deprecated. Use comparison operators instead

Add a DB specific match/like clause to the query WebDocWf extension for extended wildcard support

Parameters:
column - The column (field) name to use as a search constraint.
value - The value containing DB (vendor) specific wildcards to search for.
Returns:
Whether a where-clause was generated.

addUserMatchClause

public boolean addUserMatchClause(java.lang.String column,
                                  java.lang.String value)
Deprecated. Use comparison operators instead

Add a User specific match/like clause to the query WebDocWf extension for extended wildcard support

Parameters:
column - The column (field) name to use as a search constraint.
value - The value containing User specific wildcards to search for.
Returns:
Whether a where-clause was generated.

addMatchClause

public boolean addMatchClause(RDBColumn column,
                              java.lang.String value)
Deprecated. Use comparison operators instead

Add a DB specific match/like clause to the query WebDocWf extension for extended wildcard support

Parameters:
column - The column (field) to use as a search constraint.
value - The value containing DB (vendor) specific wildcards to search for.
Returns:
Whether a where-clause was generated.

addUserMatchClause

public boolean addUserMatchClause(RDBColumn column,
                                  java.lang.String value)
Deprecated. Use comparison operators instead

Add a User specific match/like clause to the query WebDocWf extension for extended wildcard support

Parameters:
column - The column (field) to use as a search constraint.
value - The value containing User specific wildcards to search for.
Returns:
Whether a where-clause was generated.

containsWildcards

public boolean containsWildcards(java.lang.String value)
Evaluate if string contains Wildcards WebDocWf extension for extended wildcard support

Parameters:
value - The value containing DB (vendor) specific wildcards to search for.
Returns:
Whether the value contains wildcards

convertUserSearchValue

public java.lang.String convertUserSearchValue(java.lang.String value)
Replace User wildcards with DB vendor specific wildcards according to dods.conf WebDocWf extension for extended wildcard support

Parameters:
value - The string with User wildcards to be changed
Returns:
The string with DB vendor specific wildcards

addWhereClause

public boolean addWhereClause(java.lang.String column,
                              java.math.BigDecimal value,
                              boolean nullOk)
Deprecated. Use addWhere(RDBColumn c1, BigDecimal value, String cmp_op) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The value to search for.
nullOk - Whether a value of NULL is acceptable.
Returns:
Whether a where-clause was generated. false if value==null and nullOk==false.

addWhereClause

public void addWhereClause(java.lang.String column,
                           int value)
Deprecated. Use addWhere(RDBColumn column, int value) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The int value to search for.

addWhereClause

public void addWhereClause(java.lang.String column,
                           int value,
                           java.lang.String cmp_op)
Deprecated. Use addWhere(RDBColumn column, int value, String cmp_op ) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The int value to search for.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhereClause

public void addWhereClause(java.lang.String column,
                           long value)
Deprecated. Use addWhere(RDBColumn column, long value) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The long value to search for.

addWhereClause

public void addWhereClause(java.lang.String column,
                           long value,
                           java.lang.String cmp_op)
Deprecated. Use addWhere(RDBColumn column, long value, String cmp_op ) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The long value to search for.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhereClause

public void addWhereClause(java.lang.String column,
                           float value)
Deprecated. Use addWhere(RDBColumn column, float value) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The value to search for.

addWhereClause

public void addWhereClause(java.lang.String column,
                           float value,
                           java.lang.String cmp_op)
Deprecated. Use addWhere(RDBColumn column, float value, String cmp_op ) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The value to search for.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhereClause

public void addWhereClause(java.lang.String column,
                           double value)
Deprecated. Use addWhere(RDBColumn column, double value) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The value to search for.

addWhereClause

public void addWhereClause(java.lang.String column,
                           double value,
                           java.lang.String cmp_op)
Deprecated. Use addWhere(RDBColumn column, double value, String cmp_op ) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The value to search for.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhereClause

public void addWhereClause(java.lang.String column,
                           boolean value)
Deprecated. Use addWhere(RDBColumn column, boolean value) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The value to search for.

addWhereClause

public void addWhereClause(java.lang.String column,
                           boolean value,
                           java.lang.String cmp_op)
Deprecated. Use addWhere(RDBColumn column, boolean value, String cmp_op ) instead.

Add a where-clause to the SQL command.

Parameters:
column - The column (field) name to use as a search constraint.
value - The value to search for.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addEndClause

public void addEndClause(java.lang.String clause)
Add a trailing clause (order by, group by, etc.) to the SQL command.

Parameters:
clause - The clause to append to the SQL command.

add

public void add(java.lang.String str)
Deprecated. Use addEndClause() instead.

Append to the 'select' portion of the SQL command.

Parameters:
str - The string to append to the SQL command.

debug

public void debug()
Sets debug flag to print the SQL statement just before its execution. Affects just this instance of QueryBuilder.


debugAll

public static void debugAll()
Sets debug flag to print the SQL statement just before its execution. Affects all instances of QueryBuilder.


distinct

public void distinct()

addWhere

public void addWhere(java.lang.String fullClause)

addWhereIn

public void addWhereIn(RDBColumn field,
                       QueryBuilder qb)
                throws QueryException
QueryBuilder.addWhereIn( RDBColumn, QueryBuilder ) allows queries like select Person.Name from Person where Person.City in ( select City.oid from City where City.Size > 1000 ) with code like QueryBuilder mainQuery = new QueryBuilder(); mainQuery.select( PersonDO.Name ); QueryBuilder subQuery = new QueryBuilder(); subQuery.select( CityDO.PrimaryKey ); subQuery.addWhere( CityDO.Size, 1000, QueryBuilder.GREATER_THAN ); mainQuery.addWhereIn( PersonDO.City, subQuery );

Parameters:
field - T1DO.T1Y in the example above
qb - subQuery in the example above
QueryException

addWhereExists

public void addWhereExists(QueryBuilder qb)
                    throws QueryException
QueryBuilder.addWhereExists( QueryBuilder )

Parameters:
qb - subQuery in the example above
QueryException

addWhereNotExists

public void addWhereNotExists(QueryBuilder qb)
                       throws QueryException
QueryBuilder.addWhereNotExists( QueryBuilder )

Parameters:
qb - subQuery in the example above
QueryException

addWhereNotIn

public void addWhereNotIn(RDBColumn field,
                          QueryBuilder qb)
                   throws QueryException
QueryBuilder.addWhereNotIn( RDBColumn, QueryBuilder ) allows queries like select Person.Name from Person where Person.City not in ( select City.oid from City where City.Size > 1000 ) with code like QueryBuilder mainQuery = new QueryBuilder(); mainQuery.select( PersonDO.Name ); QueryBuilder subQuery = new QueryBuilder(); subQuery.select( CityDO.PrimaryKey ); subQuery.addWhere( CityDO.Size, 1000, QueryBuilder.GREATER_THAN ); mainQuery.addWhereNotIn( PersonDO.City, subQuery );

Parameters:
field - T1DO.T1Y in the example above
qb - subQuery in the example above
QueryException

addWhereIn

public void addWhereIn(java.lang.Object val,
                       java.lang.Object[] values)
                throws QueryException
QueryBuilder.addWhereIn( Object, Object[] ) allows queries like select Person.Age from Person where Person.Name in ( "Bob", "Joe" ) with code like QueryBuilder qb = new QueryBuilder(); qb.select( PersonDO.Age ); String[] values = { "Bob", "Joe" }; qb.addWhereIn( PersonDO.Name, values ); or query select Person.Age from Person where "Tom" in ( Person.Surname, Person.Nick ) with code QueryBuilder qb = new QueryBuilder(); qb.select( PersonDO.Age ); RDBColumn[] values = { PersonDO.Surname, PersonDO.Nick }; qb.addWhereIn( "Tom", values );

Parameters:
val - : PersonDO.Name & "Tom" in the example above
values - : array of Objects containing values for IN clause any of previous Object types can be RDBColumn, String, java.sql.Date, java.sql.Timestamp, BigDecimal, Integer, Long, Float, Double, Boolean
Throws:
QueryException - if values is null or empty

addWhereNotIn

public void addWhereNotIn(java.lang.Object val,
                          java.lang.Object[] values)
                   throws QueryException
QueryBuilder.addWhereNotIn( Object, Object[] ) see addWhereIn( Object val, Object[] values ) for example

Parameters:
val -
values -
Throws:
QueryException - if values is null or empty

getSQLwithParms

public java.lang.String getSQLwithParms()

getSQL

public java.lang.String getSQL()

applyParameters

public int applyParameters(java.sql.PreparedStatement ps,
                           int paramCount)
                    throws java.sql.SQLException
java.sql.SQLException

setMaxRows

public void setMaxRows(int x)

getStatement

public java.sql.PreparedStatement getStatement()
Return the JDBC PreparedStatement generated by prepareStatement().

Returns:
The JDBC PreparedStatement.

executeQuery

public java.sql.ResultSet executeQuery(DBConnection conn)
                                throws java.sql.SQLException
Execute the PreparedStatement and return a JDBC ResultSet.

Specified by:
executeQuery in interface Query
Parameters:
conn - The DBConnection object to use for the search.
Returns:
The ResultSet object generated by JDBC for the search.
Throws:
java.sql.SQLException - If a database access error occurs.

reset

public void reset()
Reset the where-clause information. The same fields specified in the QueryBuilder constructor, can be retrieved for a different set of where-clauses.


close

public void close()

setDeleteQuery

public void setDeleteQuery()

addUpdateColumn

public void addUpdateColumn(RDBColumn column,
                            java.lang.Object value)
Add a column to set by update query

Parameters:
column - The column (field) name to set.
value - The new value to set for.

addUpdateColumn

public void addUpdateColumn(java.lang.String column,
                            java.lang.Object value)
Deprecated. Use addUpdateColumn(RDBColumn column, Object value) instead.

Add a column to set by update query

Parameters:
column - The column (field) name to set.
value - The new value to set for.

addUpdateSQL

public void addUpdateSQL(RDBColumn column,
                         java.lang.String sqlValue)
addUpdateSQL


addUpdateSQL

public void addUpdateSQL(java.lang.String column,
                         java.lang.String sqlValue)

executeUpdate

public int executeUpdate()
                  throws java.sql.SQLException
Executes the SQL INSERT, UPDATE or DELETE statement

Returns:
either the row count for INSERT, UPDATE or DELETE statements; or 0 for SQL statements that return nothing
Throws:
java.sql.SQLException - if a database access error occurs

setStringMatchDetails

public void setStringMatchDetails(java.lang.String match_keyword,
                                  java.lang.String wildcard)
Set the string matching details for inexact string matches See dods.conf for details. Code added by Chris Ryan (cryan@plugged.net.au)

Parameters:
match_keyword - Whether the DB can use "MATCHES" or "LIKE"
wildcard - The wildcard character for string searches

setStringMatchDetails

public void setStringMatchDetails(java.lang.String match_keyword,
                                  java.lang.String multi_wildcard,
                                  java.lang.String single_wildcard,
                                  java.lang.String single_wildcard_escape,
                                  java.lang.String multi_wildcard_escape,
                                  java.lang.String wildcard_escape_clause)
Initialize the extended wildcard support WebDocWf extension for extended wildcard support

Parameters:
multi_wildcard - The SQL string char for 0 to n characters ("*" or "%")
single_wildcard - The SQL string char for 1 character ("?" or "_")
single_wildcard_escape - The SQL string char for escaping a single wildcard
multi_wildcard_escape - The SQL string char for escaping a multi wildcard
wildcard_escape_clause - The SQL string for defining escape charcters

setUserStringWildcard

public void setUserStringWildcard(java.lang.String user_wildcard)
Change the user wildcard WebDocWf extension for extended wildcard support

Parameters:
user_wildcard - The user wildcard (normally "*")

setUserStringSingleWildcard

public void setUserStringSingleWildcard(java.lang.String user_single_wildcard)
Change the user single wildcard WebDocWf extension for extended wildcard support

Parameters:
user_single_wildcard - The user single wildcard (normally "?")

setUserStringSingleWildcardEscape

public void setUserStringSingleWildcardEscape(java.lang.String user_single_wildcard_escape)
Change the user single wildcard esacpe char WebDocWf extension for extended wildcard support

Parameters:
user_single_wildcard_escape - The user single wildcard escape char (normally "§")

setUserStringWildcardEscape

public void setUserStringWildcardEscape(java.lang.String user_wildcard_escape)
Change the user wildcard esacpe char WebDocWf extension for extended wildcard support

Parameters:
user_wildcard_escape - The user wildcard escape char (normally "§")

getUserStringWildcard

public java.lang.String getUserStringWildcard()
Get the user wildcard WebDocWf extension for extended wildcard support

Returns:
The user wildcard (normally "*")

getUserStringSingleWildcard

public java.lang.String getUserStringSingleWildcard()
Get the user single wildcard WebDocWf extension for extended wildcard support

Returns:
The user single wildcard (normally "?")

getUserStringSingleWildcardEscape

public java.lang.String getUserStringSingleWildcardEscape()
Get the user single wildcard escape char WebDocWf extension for extended wildcard support

Returns:
The user single wildcard escape char (normally "§")

getUserStringWildcardEscape

public java.lang.String getUserStringWildcardEscape()
Get the user wildcard escape char WebDocWf extension for extended wildcard support

Returns:
The user wildcard escape char (normally "§")

setUserStringAppendWildcard

public void setUserStringAppendWildcard(boolean user_append_wildcard)
Set whether Querybuilder should append a wildcard at the end of match-strings WebDocWf extension for extended wildcard support


setUserStringTrim

public void setUserStringTrim(boolean user_trim_string)
Set whether Querybuilder should trim the match strings WebDocWf extension for extended wildcard support


getUserStringAppendWildcard

public boolean getUserStringAppendWildcard()
Get whether Querybuilder should append a wildcard at the end of match-strings WebDocWf extension for extended wildcard support

Returns:
Whether Querybuilder appends a wildcard at the end of match-strings

getUserStringTrim

public boolean getUserStringTrim()
Get whether Querybuilder trims the match strings WebDocWf extension for extended wildcard support

Returns:
Whether Querybuilder trims the match strings

addWhereClause

public void addWhereClause(java.lang.String column,
                           java.sql.Date date,
                           java.lang.String cmp_op)
Deprecated. Use addWhere(RDBColumn c1, Date value, String cmp_op) instead.

Add a where-clause that compares a column against a date value to the SQL command. Contributed by: Victor Brilon

Parameters:
column - The column (field) name to use as a search constraint.
cmp_op - The comparison operator to use: QueryBuilder.EQUAL, ...

addWhereClause

public void addWhereClause(java.lang.String column,
                           java.sql.Timestamp date,
                           java.lang.String cmp_op)

addWhereClause

public void addWhereClause(java.lang.String column,
                           java.sql.Time date,
                           java.lang.String cmp_op)

addOrderByColumn

public void addOrderByColumn(java.lang.String column,
                             java.lang.String direction)
Add another field to the ORDER BY list. NOTE: is used by SourceGenerator_Query and writeMemberStuff.template. This method added by Chris Ryan (cryan@plugged.net.au) to allow easier access to the ORDER BY part of the SQL query.

Parameters:
column - The column to order by
direction - ASCENDING or DESCENDING order

addOrderByColumn

public void addOrderByColumn(RDBColumn column,
                             java.lang.String direction)
Add another field to the ORDER BY list. NOTE: is used by SourceGenerator_Query and writeMemberStuff.template. This method added by Chris Ryan (cryan@plugged.net.au) to allow easier access to the ORDER BY part of the SQL query.

Parameters:
column - The column to order by
direction - ASCENDING or DESCENDING order

setDatabaseVendor

public void setDatabaseVendor(java.lang.String vendor)
                       throws DatabaseManagerException
DatabaseManagerException

setDatabaseVendor

public void setDatabaseVendor()
Set database vendor for the default logical database.


compare

public static boolean compare(double a,
                              double b,
                              java.lang.String cmp_op)
                       throws QueryException
Wrapper for compare() method that takes Objects for arguments. This method takes doubles, and so will handle shorts, ints, longs, floats, doubles, but not booleans.

Parameters:
a - the DO member value
b - the value to compare against
Returns:
true if a compares to b according to cmp_op
Throws:
QueryException - if cmp_op is not a valid comparison operator.
See Also:
compare( Object a, Object b, String cmp_op )

compare

public static boolean compare(boolean a,
                              boolean b,
                              java.lang.String cmp_op)
                       throws QueryException
Wrapper for compare() method that takes Objects for arguments. This method takes booleans.

Parameters:
a - the DO member value
b - the value to compare against
Returns:
true if a compares to b according to cmp_op
Throws:
QueryException - if cmp_op is not a valid comparison operator.
See Also:
compare( Object a, Object b, String cmp_op )

compare

public static boolean compare(double a,
                              java.lang.Object b,
                              java.lang.String cmp_op)
                       throws QueryException
Wrapper for compare() method that takes Objects for arguments. This method takes two arguments - first double, and second Object.

Parameters:
a - the DO member value
b - the value to compare against
Returns:
true if a compares to b according to cmp_op
Throws:
QueryException - if cmp_op is not a valid comparison operator.
See Also:
compare( Object a, Object b, String cmp_op )

compare

public static boolean compare(boolean a,
                              java.lang.Object b,
                              java.lang.String cmp_op)
                       throws QueryException
Wrapper for compare() method that takes Objects for arguments. This method takes two arguments - first boolean, and second Object.

Parameters:
a - the DO member value
b - the value to compare against
Returns:
true if a compares to b according to cmp_op
Throws:
QueryException - if cmp_op is not a valid comparison operator.
See Also:
compare( Object a, Object b, String cmp_op )

compare

public static boolean compare(java.lang.Object a,
                              java.lang.Object b,
                              java.lang.String cmp_op)
                       throws QueryException
Compare two values according to a QueryBuilder comparison operator. This method has some general applicability. It is handy for writing sorting algorithms, etc. The Query classes generated by DODS use this method to prune undesired values from the cache held by a DO class.

Parameters:
a - the DO member value
b - the value to compare against
Returns:
true if a compares to b according to cmp_op
Throws:
QueryException - if cmp_op is not a valid comparison operator.

setSelectClause

public void setSelectClause(java.lang.String newClause)
Set the Query select clause (e.g. "*") to something different (e.g. "count(*)) Hack for implementing row counters

Parameters:
newClause - The new select clause string

getSelectClause

public java.lang.String getSelectClause()
Get the Query select clause string Hack for implementing row counters

Returns:
The current select clause string

Enhydra 5.1 API