Quadcap Embeddable Database

com.quadcap.sql.TableExpression Class Reference

Inheritance diagram for com.quadcap.sql.TableExpression:

com.quadcap.sql.Expression com.quadcap.sql.JoinedTable com.quadcap.sql.MergeExpression com.quadcap.sql.SelectExpression com.quadcap.sql.SelectFromItem com.quadcap.sql.SelectFromTable com.quadcap.sql.VectorExpression List of all members.

Detailed Description

Some kind of expression that yields a 'table', which can be joined or merged or cursored.

Author:
Stan Bailes

Definition at line 54 of file TableExpression.java.

Public Member Functions

abstract int rank ()
 Returns zero if this is a scalar expression, one if it's a vector type and 2 if it's a table/cursor type.

abstract boolean isUpdatable ()
 Is this table expression updatable?

abstract Cursor getCursor (Session session, Cursor outer) throws SQLException
 Return a cursor which can be used to access this table expression.

Type getType (Session session, Cursor cursor)
 Return the expression's type if known.

abstract void getBaseTables (Vector v)
 Return a vector consisting of the names of the underlying base tables that are used to derive this table expression.

void setWhere (Expression where)
 Set the WHERE clause associated with this table expression.

Expression getWhere ()
 Return the WHERE clause associated with this table expression.

abstract String name ()

Package Attributes

boolean anded = false
Expression where = null


Member Function Documentation

abstract void com.quadcap.sql.TableExpression.getBaseTables Vector  v  )  [pure virtual]
 

Return a vector consisting of the names of the underlying base tables that are used to derive this table expression.

Implemented in com.quadcap.sql.JoinedTable, com.quadcap.sql.MergeExpression, com.quadcap.sql.SelectExpression, com.quadcap.sql.SelectFromItem, com.quadcap.sql.SelectFromTable, and com.quadcap.sql.VectorExpression.

Referenced by com.quadcap.sql.View.getBaseTables(), com.quadcap.sql.SelectFromItem.getBaseTables(), com.quadcap.sql.MergeExpression.getBaseTables(), and com.quadcap.sql.JoinedTable.getBaseTables().

abstract Cursor com.quadcap.sql.TableExpression.getCursor Session  session,
Cursor  outer
throws SQLException [pure virtual]
 

Return a cursor which can be used to access this table expression.

Reimplemented from com.quadcap.sql.Expression.

Implemented in com.quadcap.sql.JoinedTable, com.quadcap.sql.MergeExpression, com.quadcap.sql.SelectExpression, com.quadcap.sql.SelectFromItem, com.quadcap.sql.SelectFromTable, and com.quadcap.sql.VectorExpression.

Referenced by com.quadcap.sql.SelectStmt.execute(), com.quadcap.sql.View.getCursor(), com.quadcap.sql.SelectFromItem.getCursor(), com.quadcap.sql.SelectExpression.getCursor(), com.quadcap.sql.MergeExpression.getCursor(), and com.quadcap.sql.JoinedTable.getCursor().

Type com.quadcap.sql.TableExpression.getType Session  session,
Cursor  cursor
[virtual]
 

Return the expression's type if known.

Implements com.quadcap.sql.Expression.

Definition at line 75 of file TableExpression.java.

References com.quadcap.sql.TableExpression.getType().

Referenced by com.quadcap.sql.TableExpression.getType().

Expression com.quadcap.sql.TableExpression.getWhere  ) 
 

Return the WHERE clause associated with this table expression.

Definition at line 93 of file TableExpression.java.

References com.quadcap.sql.TableExpression.where.

Referenced by com.quadcap.sql.View.checkRow(), and com.quadcap.sql.SelectExpression.AndWhere.visit().

abstract boolean com.quadcap.sql.TableExpression.isUpdatable  )  [pure virtual]
 

Is this table expression updatable?

Implemented in com.quadcap.sql.JoinedTable, com.quadcap.sql.MergeExpression, com.quadcap.sql.SelectExpression, com.quadcap.sql.SelectFromItem, com.quadcap.sql.SelectFromTable, and com.quadcap.sql.VectorExpression.

Referenced by com.quadcap.sql.View.checkRow(), com.quadcap.sql.View.isUpdatable(), com.quadcap.sql.SelectFromItem.isUpdatable(), and com.quadcap.sql.SelectExpression.isUpdatable().

abstract String com.quadcap.sql.TableExpression.name  )  [pure virtual]
 

Implemented in com.quadcap.sql.JoinedTable, com.quadcap.sql.MergeExpression, com.quadcap.sql.SelectExpression, com.quadcap.sql.SelectFromItem, com.quadcap.sql.SelectFromTable, and com.quadcap.sql.VectorExpression.

Referenced by com.quadcap.sql.SelectFromItem.name(), com.quadcap.sql.MergeExpression.name(), and com.quadcap.sql.JoinedTable.name().

abstract int com.quadcap.sql.TableExpression.rank  )  [pure virtual]
 

Returns zero if this is a scalar expression, one if it's a vector type and 2 if it's a table/cursor type.

Implements com.quadcap.sql.Expression.

Implemented in com.quadcap.sql.JoinedTable, com.quadcap.sql.MergeExpression, com.quadcap.sql.SelectExpression, com.quadcap.sql.SelectFromItem, com.quadcap.sql.SelectFromTable, and com.quadcap.sql.VectorExpression.

Referenced by com.quadcap.sql.SelectFromItem.rank().

void com.quadcap.sql.TableExpression.setWhere Expression  where  ) 
 

Set the WHERE clause associated with this table expression.

Reimplemented in com.quadcap.sql.JoinedTable, com.quadcap.sql.MergeExpression, and com.quadcap.sql.SelectFromItem.

Definition at line 88 of file TableExpression.java.

References com.quadcap.sql.TableExpression.setWhere().

Referenced by com.quadcap.sql.SelectExpression.getCursor(), com.quadcap.sql.SQLParser.querySpecification(), com.quadcap.sql.TableExpression.setWhere(), com.quadcap.sql.SelectFromItem.setWhere(), com.quadcap.sql.MergeExpression.setWhere(), com.quadcap.sql.JoinedTable.setWhere(), and com.quadcap.sql.SelectExpression.AndWhere.visit().


Member Data Documentation

boolean com.quadcap.sql.TableExpression.anded = false [package]
 

Definition at line 55 of file TableExpression.java.

Referenced by com.quadcap.sql.SelectExpression.AndWhere.visit().

Expression com.quadcap.sql.TableExpression.where = null [package]
 

Definition at line 56 of file TableExpression.java.

Referenced by com.quadcap.sql.TableExpression.getWhere().