|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.objectweb.cjdbc.common.sql.AbstractRequest
org.objectweb.cjdbc.common.sql.AbstractWriteRequest
org.objectweb.cjdbc.common.sql.UpdateRequest
An UpdateRequest is an SQL request with the following syntax:
UPDATE table-name SET (column-name=expression[,column-name=expression]*) WHERE search-condition
| Field Summary | |
private boolean |
isUnique
true if this request updates a UNIQUE row. |
private java.util.HashMap |
updatedValues
|
| Fields inherited from class org.objectweb.cjdbc.common.sql.AbstractWriteRequest |
blocking, columns, pkValue, tableName |
| Fields inherited from class org.objectweb.cjdbc.common.sql.AbstractRequest |
cacheable, escapeProcessing, id, isAutoCommit, isParsed, isReadOnly, login, maxRows, sqlQuery, sqlSkeleton, timeout, transactionId |
| Constructor Summary | |
UpdateRequest(java.lang.String sqlQuery,
boolean escapeProcessing,
int timeout,
java.lang.String lineSeparator)
Creates a new UpdateRequest instance. |
|
UpdateRequest(java.lang.String sqlQuery,
boolean escapeProcessing,
int timeout,
java.lang.String lineSeparator,
DatabaseSchema schema,
int granularity,
boolean isCaseSensitive)
Creates a new UpdateRequest instance. |
|
| Method Summary | |
void |
cloneParsing(AbstractRequest request)
Clones the parsing of a request. |
void |
debug()
Displays some debugging information about this request. |
java.util.HashMap |
getUpdatedValues()
What are the updated values in this request |
boolean |
isAlter()
Returns true if this request in a ALTER
statement. |
boolean |
isCreate()
Returns true if this request in a CREATE
statement. |
boolean |
isDelete()
Returns true if this request in a DELETE
statement. |
boolean |
isDrop()
Returns true if this request in a DROP
statement. |
boolean |
isInsert()
Returns true if this request in an INSERT
statement. |
boolean |
isUnique()
Returns true as this request updates a UNIQUE
row. |
boolean |
isUpdate()
Returns true if this request in an UPDATE
statement. |
void |
parse(DatabaseSchema schema,
int granularity,
boolean isCaseSensitive)
Parses the SQL request and extract the selected columns and tables given the DatabaseSchema of the database targeted by this request.
|
| Methods inherited from class org.objectweb.cjdbc.common.sql.AbstractWriteRequest |
cloneTableNameAndColumns, getColumns, getPk, getTableName, isReadRequest, isUnknownRequest, isWriteRequest, mightBlock, setBlocking |
| Methods inherited from class org.objectweb.cjdbc.common.sql.AbstractRequest |
equals, getCacheAbility, getEscapeProcessing, getFetchSize, getId, getLineSeparator, getLogin, getMaxRows, getSQL, getSQLShortForm, getSqlSkeleton, getTimeout, getTransactionId, isAutoCommit, isDriverProcessed, isParsed, isReadOnly, setCacheAbility, setDriverProcessed, setFetchSize, setId, setIsAutoCommit, setIsReadOnly, setLineSeparator, setLogin, setMaxRows, setSQL, setSqlSkeleton, setTimeout, setTransactionId, trimCarriageReturn |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
private transient boolean isUnique
true if this request updates a UNIQUE row.
private transient java.util.HashMap updatedValues
| Constructor Detail |
public UpdateRequest(java.lang.String sqlQuery,
boolean escapeProcessing,
int timeout,
java.lang.String lineSeparator,
DatabaseSchema schema,
int granularity,
boolean isCaseSensitive)
throws java.sql.SQLException
UpdateRequest instance. The caller must give
an SQL request, without any leading or trailing spaces and beginning with
'update ' (it will not be checked).
If the syntax is incorrect an exception is thrown.
sqlQuery - the SQL queryescapeProcessing - should the driver to escape processing before
sending to the database ?timeout - an int valuelineSeparator - the line separator used in the queryschema - a DatabaseSchema valuegranularity - parsing granularity as defined in
ParsingGranularitiesisCaseSensitive - true if parsing is case sensitive
java.sql.SQLException - if an error occurs
public UpdateRequest(java.lang.String sqlQuery,
boolean escapeProcessing,
int timeout,
java.lang.String lineSeparator)
UpdateRequest instance. The caller must give
an SQL request, without any leading or trailing spaces and beginning with
'update ' (it will not be checked).
The request is not parsed but it can be done later by a call to
parse(DatabaseSchema, int, boolean).
sqlQuery - the SQL queryescapeProcessing - should the driver to escape processing before
sending to the database ?timeout - an int valuelineSeparator - the line separator used in the queryparse(org.objectweb.cjdbc.common.sql.schema.DatabaseSchema, int, boolean)| Method Detail |
public void parse(DatabaseSchema schema,
int granularity,
boolean isCaseSensitive)
throws java.sql.SQLException
DatabaseSchema of the database targeted by this request.
Determines also if this query only deletes a single row, and the equivalent
INSERT statement.
An exception is thrown when the parsing fails. Warning, this method does not check the validity of the request. In particular, invalid request could be parsed without throwing an exception. However, valid SQL request should never throw an exception.
parse in class AbstractRequestschema - a DatabaseSchema valuegranularity - parsing granularity as defined in
ParsingGranularitiesisCaseSensitive - true if table name parsing is case sensitive
java.sql.SQLException - if the parsing failspublic java.util.HashMap getUpdatedValues()
public void cloneParsing(AbstractRequest request)
AbstractRequest
cloneParsing in class AbstractRequestrequest - the parsed request to cloneAbstractRequest.cloneParsing(AbstractRequest)public boolean isInsert()
AbstractWriteRequesttrue if this request in an INSERT
statement.
isInsert in class AbstractWriteRequestfalseAbstractWriteRequest.isInsert()public boolean isUpdate()
AbstractWriteRequesttrue if this request in an UPDATE
statement.
isUpdate in class AbstractWriteRequesttrueAbstractWriteRequest.isUpdate()public boolean isDelete()
AbstractWriteRequesttrue if this request in a DELETE
statement.
isDelete in class AbstractWriteRequestfalseAbstractWriteRequest.isDelete()public boolean isCreate()
AbstractWriteRequesttrue if this request in a CREATE
statement.
isCreate in class AbstractWriteRequestfalseAbstractWriteRequest.isCreate()public boolean isDrop()
AbstractWriteRequesttrue if this request in a DROP
statement.
isDrop in class AbstractWriteRequestfalseAbstractWriteRequest.isDrop()public boolean isUnique()
true as this request updates a UNIQUE
row.
falsepublic void debug()
debug in class AbstractRequestpublic boolean isAlter()
AbstractWriteRequesttrue if this request in a ALTER
statement.
isAlter in class AbstractWriteRequestboolean valueAbstractWriteRequest.isAlter()
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||