|
||||||||
| 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.index.BaseIndex
org.h2.index.HashIndex
public class HashIndex
An unique index based on an in-memory hash map.
| Field Summary | |
|---|---|
protected int |
indexColumn
The index of the indexed column. |
| Fields inherited from class org.h2.index.BaseIndex |
|---|
columnIds, columns, indexColumns, indexType, isMultiVersion, table |
| 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 | |
|---|---|
HashIndex(RegularTable table,
int id,
java.lang.String indexName,
IndexColumn[] columns,
IndexType indexType)
|
|
| Method Summary | |
|---|---|
void |
add(Session session,
Row row)
Add a row to this index. |
boolean |
canGetFirstOrLast()
Check if this index can quickly find the first or last value. |
void |
checkRename()
Check if this object can be renamed. |
void |
close(Session session)
Close this index. |
Cursor |
find(Session session,
SearchRow first,
SearchRow last)
Create a cursor to iterate over a number of rows. |
Cursor |
findFirstOrLast(Session session,
boolean first)
Find the first (or last) value of this index. |
double |
getCost(Session session,
int[] masks)
Calculate the cost to find rows. |
long |
getRowCount(Session session)
Get the row count of this table, for the given session. |
long |
getRowCountApproximation()
Get the approximated row count for this table. |
boolean |
needRebuild()
Check if this index needs to be re-built. |
void |
remove(Session session)
Remove the index. |
void |
remove(Session session,
Row row)
Remove a row from the index. |
void |
truncate(Session session)
Truncate the index. |
| Methods inherited from class org.h2.index.BaseIndex |
|---|
canFindNext, commit, compareKeys, compareRows, containsNullAndAllowMultipleNull, findNext, getColumnIndex, getColumnListSQL, getColumns, getCostRangeIndex, getCreateSQL, getCreateSQLForCopy, getDropSQL, getDuplicateKeyException, getIndexColumns, getIndexType, getLookupCost, getPlanSQL, getRootPageId, getRow, getTable, getType, initBaseIndex, isHidden, removeChildrenAndResources |
| Methods inherited from class org.h2.schema.SchemaObjectBase |
|---|
getSchema, getSQL, initSchemaObjectBase |
| Methods inherited from class org.h2.engine.DbObjectBase |
|---|
getChildren, getComment, getDatabase, getId, getModificationId, getName, initDbObjectBase, invalidate, isTemporary, rename, setComment, setModified, setObjectName, setTemporary, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.h2.schema.SchemaObject |
|---|
getSchema |
| Methods inherited from interface org.h2.engine.DbObject |
|---|
getChildren, getComment, getDatabase, getId, getModificationId, getName, getSQL, isTemporary, rename, setComment, setModified, setTemporary |
| Field Detail |
|---|
protected final int indexColumn
| Constructor Detail |
|---|
public HashIndex(RegularTable table,
int id,
java.lang.String indexName,
IndexColumn[] columns,
IndexType indexType)
| Method Detail |
|---|
public void truncate(Session session)
BaseIndex
truncate in interface Indextruncate in class BaseIndexsession - the session
public void add(Session session,
Row row)
BaseIndex
add in interface Indexadd in class BaseIndexsession - the sessionrow - the row to add
public void remove(Session session,
Row row)
BaseIndex
remove in interface Indexremove in class BaseIndexsession - the sessionrow - the row
public Cursor find(Session session,
SearchRow first,
SearchRow last)
BaseIndex
find in interface Indexfind in class BaseIndexsession - the sessionfirst - the first row to return (null if no limit)last - the last row to return (null if no limit)
public long getRowCount(Session session)
Index
session - the session
public long getRowCountApproximation()
Index
public void close(Session session)
BaseIndex
close in interface Indexclose in class BaseIndexsession - the sessionpublic void remove(Session session)
BaseIndex
remove in interface Indexremove in class BaseIndexsession - the session
public double getCost(Session session,
int[] masks)
BaseIndex
getCost in interface IndexgetCost in class BaseIndexsession - the sessionmasks - the condition mask
public void checkRename()
DbObjectBase
checkRename in interface DbObjectcheckRename in class DbObjectBasepublic boolean needRebuild()
BaseIndex
needRebuild in interface IndexneedRebuild in class BaseIndexpublic boolean canGetFirstOrLast()
BaseIndex
canGetFirstOrLast in interface IndexcanGetFirstOrLast in class BaseIndex
public Cursor findFirstOrLast(Session session,
boolean first)
BaseIndex
findFirstOrLast in interface IndexfindFirstOrLast in class BaseIndexsession - the sessionfirst - true for the first value, false for the last
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||