|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.h2.engine.DbObjectBase
org.h2.schema.SchemaObjectBase
org.h2.table.Table
org.h2.table.TableData
public class TableData
Most tables are an instance of this class. For this table, the data is stored in the database. The actual data is not kept here, instead it is kept in the indexes. There is at least one index, the scan index.
Field Summary |
---|
Fields inherited from class org.h2.table.Table |
---|
columns, compareMode, memoryPerRow, SYSTEM_TABLE, TABLE, TABLE_LINK, TYPE_CACHED, TYPE_MEMORY, VIEW |
Fields inherited from class org.h2.engine.DbObjectBase |
---|
comment, database, trace |
Fields inherited from interface org.h2.engine.DbObject |
---|
AGGREGATE, COMMENT, CONSTANT, CONSTRAINT, FUNCTION_ALIAS, INDEX, RIGHT, ROLE, SCHEMA, SEQUENCE, SETTING, TABLE_OR_VIEW, TRIGGER, USER, USER_DATATYPE |
Constructor Summary | |
---|---|
TableData(CreateTableData data)
|
Method Summary | |
---|---|
Index |
addIndex(Session session,
java.lang.String indexName,
int indexId,
IndexColumn[] cols,
IndexType indexType,
int headPos,
java.lang.String indexComment)
Create an index for this table |
void |
addRow(Session session,
Row row)
Add a row to the table and all indexes. |
boolean |
canDrop()
Check if this table can be dropped. |
boolean |
canGetRowCount()
Check if the row count can be retrieved quickly. |
boolean |
canTruncate()
Check if this table can be truncated. |
ObjectArray<Session> |
checkDeadlock(Session session,
Session clash,
java.util.Set<Session> visited)
Check if a deadlock occurred. |
void |
checkRename()
Check if this object can be renamed. |
void |
checkSupportAlter()
Check if this table supports ALTER TABLE. |
void |
close(Session session)
Close the table object and flush changes. |
Row |
createRow(Value[] data)
Create a row from the values. |
boolean |
getContainsLargeObject()
|
java.lang.String |
getCreateSQL()
Build a SQL statement to re-create this object. |
java.lang.String |
getDropSQL()
Build a SQL statement to drop this object. |
int |
getHeadPos()
Get the position of the head record. |
ObjectArray<Index> |
getIndexes()
Get all indexes for this table. |
long |
getMaxDataModificationId()
Get the last data modification id. |
Row |
getRow(Session session,
long key)
Read the given row. |
long |
getRowCount(Session session)
Get the row count for this table. |
long |
getRowCountApproximation()
Get the approximated row count for this table. |
Index |
getScanIndex(Session session)
Get the scan index to iterate through all rows. |
java.lang.String |
getTableType()
Get the table type name |
Index |
getUniqueIndex()
Get any unique index for this table if one exists. |
boolean |
isDeterministic()
Check if the table is deterministic. |
boolean |
isGlobalTemporary()
|
boolean |
isLockedExclusively()
Check if this table is locked exclusively. |
void |
lock(Session session,
boolean exclusive,
boolean force)
Lock the table for the given session. |
Record |
read(Session session,
DataPage s)
Read a record from the data page. |
Row |
readRow(DataPage s)
Read a row from the data page. |
void |
removeChildrenAndResources(Session session)
Remove all dependent objects and free all resources (files, blocks in files) of this object. |
void |
removeRow(Session session,
Row row)
Remove a row from the table and all indexes. |
void |
setCompareMode(CompareMode compareMode)
|
void |
setGlobalTemporary(boolean globalTemporary)
|
void |
setRowCount(long count)
Set the row count of this table. |
java.lang.String |
toString()
|
void |
truncate(Session session)
Remove all rows from the table and indexes. |
void |
unlock(Session s)
Release the lock for this session. |
Methods inherited from class org.h2.schema.SchemaObjectBase |
---|
getSchema, getSQL, initSchemaObjectBase |
Methods inherited from class org.h2.engine.DbObjectBase |
---|
getComment, getDatabase, getId, getModificationId, getName, initDbObjectBase, invalidate, isTemporary, setComment, setModified, setObjectName, setTemporary |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.h2.engine.DbObject |
---|
getComment, getDatabase, getId, getModificationId, getName, isTemporary, setComment, setModified, setTemporary |
Constructor Detail |
---|
public TableData(CreateTableData data) throws java.sql.SQLException
java.sql.SQLException
Method Detail |
---|
public int getHeadPos()
DbObject
getHeadPos
in interface DbObject
getHeadPos
in class DbObjectBase
public void close(Session session) throws java.sql.SQLException
Table
close
in class Table
session
- the session
java.sql.SQLException
public Row getRow(Session session, long key) throws java.sql.SQLException
session
- the sessionkey
- unique key
java.sql.SQLException
public void addRow(Session session, Row row) throws java.sql.SQLException
Table
addRow
in class Table
session
- the sessionrow
- the row
java.sql.SQLException
- if a constraint was violatedpublic Index getScanIndex(Session session)
Table
getScanIndex
in class Table
session
- the session
public Index getUniqueIndex()
Table
getUniqueIndex
in class Table
public ObjectArray<Index> getIndexes()
Table
getIndexes
in class Table
public Index addIndex(Session session, java.lang.String indexName, int indexId, IndexColumn[] cols, IndexType indexType, int headPos, java.lang.String indexComment) throws java.sql.SQLException
Table
addIndex
in class Table
session
- the sessionindexName
- the name of the indexindexId
- the idcols
- the index columnsindexType
- the index typeheadPos
- the position of the head (if the index already exists)indexComment
- the comment
java.sql.SQLException
public boolean canGetRowCount()
Table
canGetRowCount
in class Table
public boolean canDrop()
Table
canDrop
in class Table
public long getRowCount(Session session)
Table
getRowCount
in class Table
session
- the session
public void removeRow(Session session, Row row) throws java.sql.SQLException
Table
removeRow
in class Table
session
- the sessionrow
- the row
java.sql.SQLException
public void truncate(Session session) throws java.sql.SQLException
Table
truncate
in class Table
session
- the session
java.sql.SQLException
public void lock(Session session, boolean exclusive, boolean force) throws java.sql.SQLException
Table
lock
in class Table
session
- the sessionexclusive
- true for write locks, false for read locksforce
- lock even in the MVCC mode
java.sql.SQLException
- if a lock timeout occurredpublic ObjectArray<Session> checkDeadlock(Session session, Session clash, java.util.Set<Session> visited)
Table
checkDeadlock
in class Table
session
- the session to be tested forclash
- set with sessions already visited, and null when starting
verificationvisited
- set with sessions already visited, and null when starting
verification
public java.lang.String getDropSQL()
DbObjectBase
getDropSQL
in interface DbObject
getDropSQL
in class DbObjectBase
public java.lang.String getCreateSQL()
DbObjectBase
getCreateSQL
in interface DbObject
getCreateSQL
in class DbObjectBase
public boolean isLockedExclusively()
Table
isLockedExclusively
in class Table
public void unlock(Session s)
Table
unlock
in class Table
s
- the sessionpublic Record read(Session session, DataPage s) throws java.sql.SQLException
RecordReader
read
in interface RecordReader
session
- the sessions
- the data page
java.sql.SQLException
public Row readRow(DataPage s) throws java.sql.SQLException
s
- the data page
java.sql.SQLException
public Row createRow(Value[] data)
data
- the value list
public void setRowCount(long count)
count
- the row countpublic void removeChildrenAndResources(Session session) throws java.sql.SQLException
DbObjectBase
removeChildrenAndResources
in interface DbObject
removeChildrenAndResources
in class Table
session
- the session
java.sql.SQLException
public java.lang.String toString()
toString
in class DbObjectBase
public void checkRename()
DbObjectBase
checkRename
in interface DbObject
checkRename
in class DbObjectBase
public void checkSupportAlter()
Table
checkSupportAlter
in class Table
public boolean canTruncate()
Table
canTruncate
in class Table
public java.lang.String getTableType()
Table
getTableType
in class Table
public void setGlobalTemporary(boolean globalTemporary)
public boolean isGlobalTemporary()
isGlobalTemporary
in class Table
public long getMaxDataModificationId()
Table
getMaxDataModificationId
in class Table
public boolean getContainsLargeObject()
public long getRowCountApproximation()
Table
getRowCountApproximation
in class Table
public void setCompareMode(CompareMode compareMode)
public boolean isDeterministic()
Table
isDeterministic
in class Table
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |