|
||||||||||
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.LinkedIndex
public class LinkedIndex
A linked index is a index for a linked (remote) table. It is backed by an index on the remote table which is accessed over JDBC.
Field Summary |
---|
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.index.Index |
---|
EMPTY_HEAD |
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 | |
---|---|
LinkedIndex(TableLink table,
int id,
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. |
java.lang.String |
getCreateSQL()
Build a SQL statement to re-create this object. |
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. |
void |
update(Row oldRow,
Row newRow)
Update a row using a UPDATE statement. |
Methods inherited from class org.h2.index.BaseIndex |
---|
canFindNext, commit, compareKeys, compareRows, containsNullAndAllowMultipleNull, findNext, getColumnIndex, getColumnListSQL, getColumns, getCostRangeIndex, getCreateSQLForCopy, getDropSQL, getDuplicateKeyException, getIndexColumns, getIndexType, getLookupCost, getPlanSQL, getRootPageId, getTable, getType, removeChildrenAndResources |
Methods inherited from class org.h2.schema.SchemaObjectBase |
---|
getSchema, getSQL, initSchemaObjectBase |
Methods inherited from class org.h2.engine.DbObjectBase |
---|
getChildren, getComment, getDatabase, getHeadPos, 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, getHeadPos, getId, getModificationId, getName, getSQL, isTemporary, rename, setComment, setModified, setTemporary |
Constructor Detail |
---|
public LinkedIndex(TableLink table, int id, IndexColumn[] columns, IndexType indexType)
Method Detail |
---|
public java.lang.String getCreateSQL()
DbObjectBase
getCreateSQL
in interface DbObject
getCreateSQL
in class BaseIndex
public void close(Session session)
BaseIndex
close
in interface Index
close
in class BaseIndex
session
- the sessionpublic void add(Session session, Row row) throws java.sql.SQLException
BaseIndex
add
in interface Index
add
in class BaseIndex
session
- the sessionrow
- the row to add
java.sql.SQLException
public Cursor find(Session session, SearchRow first, SearchRow last) throws java.sql.SQLException
BaseIndex
find
in interface Index
find
in class BaseIndex
session
- the sessionfirst
- the first row to return (null if no limit)last
- the last row to return (null if no limit)
java.sql.SQLException
public double getCost(Session session, int[] masks)
BaseIndex
getCost
in interface Index
getCost
in class BaseIndex
session
- the sessionmasks
- the condition mask
public void remove(Session session)
BaseIndex
remove
in interface Index
remove
in class BaseIndex
session
- the sessionpublic void truncate(Session session)
BaseIndex
truncate
in interface Index
truncate
in class BaseIndex
session
- the sessionpublic void checkRename() throws java.sql.SQLException
DbObjectBase
checkRename
in interface DbObject
checkRename
in class DbObjectBase
java.sql.SQLException
- if renaming is not allowedpublic boolean needRebuild()
BaseIndex
needRebuild
in interface Index
needRebuild
in class BaseIndex
public boolean canGetFirstOrLast()
BaseIndex
canGetFirstOrLast
in interface Index
canGetFirstOrLast
in class BaseIndex
public Cursor findFirstOrLast(Session session, boolean first) throws java.sql.SQLException
BaseIndex
findFirstOrLast
in interface Index
findFirstOrLast
in class BaseIndex
session
- the sessionfirst
- true for the first value, false for the last
java.sql.SQLException
public void remove(Session session, Row row) throws java.sql.SQLException
BaseIndex
remove
in interface Index
remove
in class BaseIndex
session
- the sessionrow
- the row
java.sql.SQLException
public void update(Row oldRow, Row newRow) throws java.sql.SQLException
oldRow
- the old datanewRow
- the new data
java.sql.SQLException
public long getRowCount(Session session)
Index
session
- the session
public long getRowCountApproximation()
Index
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |