public class LinkedIndex extends BaseIndex
columnIds, columns, indexColumns, indexType, isMultiVersion, table
comment, database, trace
AGGREGATE, COMMENT, CONSTANT, CONSTRAINT, FUNCTION_ALIAS, INDEX, RIGHT, ROLE, SCHEMA, SEQUENCE, SETTING, TABLE_OR_VIEW, TRIGGER, USER, USER_DATATYPE
Constructor and Description |
---|
LinkedIndex(TableLink table,
int id,
IndexColumn[] columns,
IndexType indexType) |
Modifier and Type | Method and Description |
---|---|
void |
add(Session session,
Row row)
Add a row to the index.
|
boolean |
canGetFirstOrLast()
Check if the index can directly look up the lowest or highest value of a
column.
|
void |
checkRename()
Check if this object can be renamed.
|
void |
close(Session session)
Close this index.
|
Cursor |
find(Session session,
SearchRow first,
SearchRow last)
Find a row or a list of rows and create a cursor to iterate over the result.
|
Cursor |
findFirstOrLast(Session session,
boolean first)
Find the first (or last) value of this index.
|
double |
getCost(Session session,
int[] masks)
Estimate the cost to search for rows given the search mask.
|
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 the index needs to be rebuilt.
|
void |
remove(Session session)
Remove the index.
|
void |
remove(Session session,
Row row)
Remove a row from the index.
|
void |
truncate(Session session)
Remove all rows from the index.
|
void |
update(Row oldRow,
Row newRow)
Update a row using a UPDATE statement.
|
canFindNext, canScan, commit, compareRows, find, findNext, getColumnIndex, getColumns, getCreateSQLForCopy, getDropSQL, getIndexColumns, getIndexType, getPlanSQL, getRow, getTable, getType, initBaseIndex, isHidden, isRowIdIndex, removeChildrenAndResources, setSortedInsertMode
getSchema, getSQL, initSchemaObjectBase
getChildren, getComment, getDatabase, getId, getModificationId, getName, initDbObjectBase, invalidate, isTemporary, rename, setComment, setModified, setObjectName, setTemporary, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getSchema
getChildren, getComment, getDatabase, getId, getName, getSQL, isTemporary, rename, setComment, setTemporary
public LinkedIndex(TableLink table, int id, IndexColumn[] columns, IndexType indexType)
public String getCreateSQL()
DbObjectBase
getCreateSQL
in interface DbObject
getCreateSQL
in class BaseIndex
public void close(Session session)
Index
session
- the session used to write datapublic void add(Session session, Row row)
Index
session
- the session to userow
- the row to addpublic Cursor find(Session session, SearchRow first, SearchRow last)
Index
session
- the sessionfirst
- the first row, or null for no limitlast
- the last row, or null for no limitpublic double getCost(Session session, int[] masks)
Index
session
- the sessionmasks
- the search maskpublic void remove(Session session)
Index
session
- the sessionpublic void truncate(Session session)
Index
session
- the sessionpublic void checkRename()
DbObjectBase
checkRename
in interface DbObject
checkRename
in class DbObjectBase
public boolean needRebuild()
Index
public boolean canGetFirstOrLast()
Index
public Cursor findFirstOrLast(Session session, boolean first)
Index
session
- the sessionfirst
- true if the first (lowest for ascending indexes) or last
value should be returnedpublic void remove(Session session, Row row)
Index
session
- the sessionrow
- the rowpublic void update(Row oldRow, Row newRow)
oldRow
- the old datanewRow
- the new datapublic long getRowCount(Session session)
Index
session
- the sessionpublic long getRowCountApproximation()
Index
Copyright © 2012 JBoss by Red Hat. All Rights Reserved.