|
|||||||||||
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.CreateRequest
A CreateRequest
is a SQL request of the following syntax:
CREATE [TEMPORARY] TABLE table-name [(column-name column-type [,column-name colum-type]* [,table-constraint-definition]*)]
Field Summary | |
private java.util.ArrayList |
fromTables
List of tables used to fill the created table in case of create query containing a select. |
private DatabaseTable |
table
The table to create. |
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 | |
CreateRequest(java.lang.String sqlQuery,
boolean escapeProcessing,
int timeout,
java.lang.String lineSeparator)
Creates a new CreateRequest instance. |
|
CreateRequest(java.lang.String sqlQuery,
boolean escapeProcessing,
int timeout,
java.lang.String lineSeparator,
DatabaseSchema schema,
int granularity,
boolean isCaseSensitive)
Creates a new CreateRequest instance. |
Method Summary | |
void |
cloneParsing(AbstractRequest request)
Clones the parsing of a request. |
void |
debug()
Displays some debugging information about this request. |
DatabaseTable |
getDatabaseTable()
Gets the database table created by this statement. |
java.util.ArrayList |
getFromTables()
Returns the list of tables used to fill the created table in case of create query containing a select. |
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 |
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 DatabaseTable table
private transient java.util.ArrayList fromTables
Constructor Detail |
public CreateRequest(java.lang.String sqlQuery, boolean escapeProcessing, int timeout, java.lang.String lineSeparator, DatabaseSchema schema, int granularity, boolean isCaseSensitive) throws java.sql.SQLException
CreateRequest
instance. The caller must give
an SQL request, without any leading or trailing spaces and beginning with
'create table ' (it will not be checked).
If the syntax is incorrect an exception is thrown.
sqlQuery
- the SQL requestescapeProcessing
- 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
ParsingGranularities
isCaseSensitive
- true if parsing is case sensitive
java.sql.SQLException
- if an error occurspublic CreateRequest(java.lang.String sqlQuery, boolean escapeProcessing, int timeout, java.lang.String lineSeparator)
CreateRequest
instance. The caller must give
an SQL request, without any leading or trailing spaces and beginning with
'create table ' (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 requestescapeProcessing
- 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
AbstractRequest
DatabaseSchema
of the database targeted by this request.
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 AbstractRequest
schema
- a DatabaseSchema
valuegranularity
- parsing granularity as defined in
ParsingGranularities
isCaseSensitive
- true if parsing must be case sensitive
java.sql.SQLException
- if the parsing failsAbstractRequest.parse(org.objectweb.cjdbc.common.sql.schema.DatabaseSchema,
int, boolean)
public void cloneParsing(AbstractRequest request)
AbstractRequest
cloneParsing
in class AbstractRequest
request
- the parsed request to cloneAbstractRequest.cloneParsing(AbstractRequest)
public boolean isCreate()
AbstractWriteRequest
true
if this request in a CREATE
statement.
isCreate
in class AbstractWriteRequest
true
AbstractWriteRequest.isCreate()
public boolean isInsert()
AbstractWriteRequest
true
if this request in an INSERT
statement.
isInsert
in class AbstractWriteRequest
false
AbstractWriteRequest.isInsert()
public boolean isUpdate()
AbstractWriteRequest
true
if this request in an UPDATE
statement.
isUpdate
in class AbstractWriteRequest
false
AbstractWriteRequest.isUpdate()
public boolean isDelete()
AbstractWriteRequest
true
if this request in a DELETE
statement.
isDelete
in class AbstractWriteRequest
false
AbstractWriteRequest.isDelete()
public boolean isDrop()
AbstractWriteRequest
true
if this request in a DROP
statement.
isDrop
in class AbstractWriteRequest
false
AbstractWriteRequest.isDrop()
public DatabaseTable getDatabaseTable()
DatabaseTable
valuepublic java.util.ArrayList getFromTables()
ArrayList
public void debug()
debug
in class AbstractRequest
public boolean isAlter()
AbstractWriteRequest
true
if this request in a ALTER
statement.
isAlter
in class AbstractWriteRequest
boolean
valueAbstractWriteRequest.isAlter()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |