|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.empire.db.DBObject
org.apache.empire.db.DBExpr
org.apache.empire.db.DBRowSet
org.apache.empire.db.DBView
public abstract class DBView
This class represents a database view. It contains methods to get and update records from the database
Nested Class Summary | |
---|---|
static class |
DBView.DBViewColumn
|
Field Summary |
---|
Fields inherited from class org.apache.empire.db.DBRowSet |
---|
columnReferences, columns, comment, db, log, primaryKey, timestampColumn |
Fields inherited from class org.apache.empire.db.DBExpr |
---|
CTX_ALIAS, CTX_ALL, CTX_DEFAULT, CTX_FULLNAME, CTX_NAME, CTX_NOPARENTHESES, CTX_VALUE |
Constructor Summary | |
---|---|
DBView(String name,
DBDatabase db)
Creates a view object for a given view in the database. |
|
DBView(String name,
DBDatabase db,
boolean isUpdateable)
Creates a view object for a given view in the database. |
Method Summary | |
---|---|
protected DBView.DBViewColumn |
addColumn(DBTableColumn sourceColumn)
Adds a column to the view based on an existing column in another table or view. |
protected void |
addColumn(DBView.DBViewColumn col)
Adds a column to the view. |
protected DBView.DBViewColumn |
addColumn(String columnName,
DataType dataType)
Adds a column to the view. |
protected DBView.DBViewColumn |
addColumn(String columnName,
DBColumnExpr columnExpr)
Adds a column to the view. |
void |
addSQL(StringBuilder buf,
long context)
Creates the SQL-Command adds the alias name to the SQL-Command. |
abstract DBCommandExpr |
createCommand()
Returns the command required to create the view This is function is only used for the creation of DDL statements |
void |
createRecord(DBRecord rec,
Connection conn)
|
void |
deleteRecord(Object[] keys,
Connection conn)
|
DBView.DBViewColumn |
findViewColumn(DBColumnExpr expr)
This function searchs for equal columns given by the specified DBColumnExpr object. |
String |
getAlias()
Returns the alias name of this object. |
String |
getFullName()
Returns the full qualified table name. |
String |
getName()
Returns the view name of this object. |
boolean |
isUpdateable()
Returns whether or not the view is updateable |
protected void |
setKeyColumn(DBView.DBViewColumn keyColumn)
identifies the column that uniquely identifies a row in the view |
protected void |
setKeyColumns(DBView.DBViewColumn[] keyColumns)
identifies the columns that uniquely identify a row in the view |
void |
updateRecord(DBRecord rec,
Connection conn)
Updates or Inserts a record in the database. Whether an update or insert is performed depends on the record state. Only modified fields will be inserted or updated in the database. |
Methods inherited from class org.apache.empire.db.DBRowSet |
---|
addColumnReference, addReferencedColumns, completeInitRecord, count, deleteAllReferences, deleteRecord, deleteReferenceRecords, equals, findById, getColumn, getColumn, getColumnIndex, getColumnIndex, getColumnReferences, getColumns, getComment, getDatabase, getId, getKeyColumns, getRecordKey, getRenameTablePhrase, getTimestampColumn, hashCode, initRecord, initRecord, isColumnReadOnly, isKeyColumn, prepareInitRecord, readRecord, readRecord, recordExists, recordExists, setComment, setKeyConstraints, setTimestampColumn |
Methods inherited from class org.apache.empire.db.DBExpr |
---|
getObjectValue, getValueClass |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DBView(String name, DBDatabase db, boolean isUpdateable)
name
- the name of the viewdb
- the database this view belongs to.isUpdateable
- true if the records of this view can be updatedpublic DBView(String name, DBDatabase db)
name
- the name of the viewdb
- the database this view belongs to.Method Detail |
---|
protected void setKeyColumns(DBView.DBViewColumn[] keyColumns)
keyColumns
- list of columns that uniquely identify a rowprotected void setKeyColumn(DBView.DBViewColumn keyColumn)
keyColumn
- the column that uniquely identifies a rowpublic abstract DBCommandExpr createCommand()
public String getName()
getName
in class DBRowSet
public String getFullName()
getFullName
in class DBRowSet
public String getAlias()
getAlias
in class DBRowSet
public boolean isUpdateable()
isUpdateable
in class DBRowSet
protected void addColumn(DBView.DBViewColumn col)
col
- a view column objectprotected final DBView.DBViewColumn addColumn(String columnName, DataType dataType)
columnName
- name of the column in the viewdataType
- the data type of the column
protected final DBView.DBViewColumn addColumn(String columnName, DBColumnExpr columnExpr)
columnName
- name of the column in the viewcolumnExpr
- the column expression that builds the column
protected final DBView.DBViewColumn addColumn(DBTableColumn sourceColumn)
sourceColumn
- existing column in another table or view
public DBView.DBViewColumn findViewColumn(DBColumnExpr expr)
expr
- the DBColumnExpr object
public void addSQL(StringBuilder buf, long context)
addSQL
in class DBExpr
buf
- the SQL-Commandcontext
- the current SQL-Command contextpublic void updateRecord(DBRecord rec, Connection conn)
DBRowSet
If a timestamp-column is set for this RowSet then a constraint will be added in the
update statement in order to detect concurrent changes.
If the record has been modified by another user, an error of type
DBErrors.RecordUpdateFailed will be set.
updateRecord
in class DBRowSet
rec
- the DBRecord object. contains all fields and the field propertiesconn
- a valid JDBC connection.public void createRecord(DBRecord rec, Connection conn)
createRecord
in class DBRowSet
public void deleteRecord(Object[] keys, Connection conn)
deleteRecord
in class DBRowSet
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |