![]() |
Quadcap Embeddable Database |
Inheritance diagram for com.quadcap.sql.Cursor:

Definition at line 52 of file Cursor.java.
Public Member Functions | |
| Row | getRow () throws SQLException |
| Return the cursor's current row. | |
| void | insertRow (Row row) throws SQLException |
| Insert the specified row into the cursor's underlying table. | |
| void | updateRow (Row row) throws SQLException |
| Replace the current cursor row with the specified row. | |
| void | deleteRow () throws SQLException |
| Delete the current cursor row. | |
| long | getRowId () |
| Some cursors have rows where the rows can be identified by row id, and sometimes the cursors even know the row id for the current row. | |
| void | beforeFirst () throws SQLException |
| Position the cursor before the first row. | |
| void | afterLast () throws SQLException |
| Position the cursor after the last row. | |
| boolean | absolute (int row) throws SQLException |
| Move to the specified absolute row. | |
| boolean | next () throws SQLException |
| Advance the cursor and return true if we advanced to a valid row. | |
| boolean | prev () throws SQLException |
| Move the cursor back one row and return true if we moved back to a valid row. | |
| void | close () throws SQLException |
| Close the cursor and free up any resources (including closing the cursor's transaction if that is feasible) used by the cursor. | |
| long | size () throws SQLException |
| If the underlying implementation knows, or can compute cheaply, the actual size of the ResultSet, it should return a non-negative number here. | |
| boolean | isWritable (int column) throws SQLException |
| Return true if the specified column is writable. | |
| Cursor | getOuterCursor () |
| Return the cursor in the enclosing context (this applies if we're in a sub-query, for example). | |
| void | setOuterCursor (Cursor outer) |
| Set the cursor context in which this subquery is executing. | |
| Session | getSession () |
| Return the cursor's session. | |
| Table | getTable () |
| Some cursors are, or can be viewed as, tables. | |
| void | reset (Expression where, Cursor outer) throws SQLException |
| An attempt at an API to allow cursor reuse. | |
|
|
Move to the specified absolute row. The first row is '1'. absolute(-1) moves to the last row. absolute(0) throws an exception.
Implemented in com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.PredicateCursor, com.quadcap.sql.StaticCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.ViewCursor.absolute(), and com.quadcap.sql.FilterCursor.absolute(). |
|
|
Position the cursor after the last row.
Implemented in com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.IndexCursor, com.quadcap.sql.ItemsCursor, com.quadcap.sql.JoinCursor, com.quadcap.sql.MergeCursor, com.quadcap.sql.StaticCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.ViewCursor.afterLast(), com.quadcap.sql.ItemsCursor.afterLast(), and com.quadcap.sql.FilterCursor.afterLast(). |
|
|
|
|
Delete the current cursor row.
Implemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.GroupByCursor, com.quadcap.sql.IndexCursor, com.quadcap.sql.ItemsCursor, com.quadcap.sql.JoinCursor, com.quadcap.sql.MergeCursor, com.quadcap.sql.StaticCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.ViewCursor.deleteRow(), com.quadcap.sql.ItemsCursor.deleteRow(), com.quadcap.sql.FilterCursor.deleteRow(), and com.quadcap.sql.StmtDelete.execute(). |
|
|
Return the cursor in the enclosing context (this applies if we're in a sub-query, for example).
Implemented in com.quadcap.sql.CursorImpl. Referenced by com.quadcap.sql.FilterCursor.FilterCursor(). |
|
|
Return the cursor's current row.
Implemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.GroupByCursor, com.quadcap.sql.HavingCursor, com.quadcap.sql.ItemsCursor, com.quadcap.sql.JoinCursor, com.quadcap.sql.MergeCursor, com.quadcap.sql.PredicateCursor, com.quadcap.sql.StaticCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.JoinCursor.anext(), com.quadcap.sql.JoinCursor.bnext(), com.quadcap.sql.StmtUpdate.execute(), com.quadcap.sql.StmtInsert.execute(), com.quadcap.sql.ViewCursor.getRow(), com.quadcap.sql.ItemsCursor.getRow(), com.quadcap.sql.FilterCursor.getRow(), com.quadcap.sql.SelectExpression.getValue(), com.quadcap.sql.QuantifiedCompare.getValue(), com.quadcap.sql.NameExpression.getValue(), com.quadcap.sql.InExpression.getValue2(), com.quadcap.sql.InExpression.InSessionState.init(), com.quadcap.sql.ItemsCursor.makeFirstRow(), com.quadcap.sql.JoinInnerCursor.makeTemporaryIndexForTable(), com.quadcap.sql.JoinInnerCursor.makeTemporaryIndexForView(), com.quadcap.sql.InExpression.InSessionState.matchCorrelated(), com.quadcap.sql.PredicateCursor.next(), com.quadcap.sql.HavingCursor.next(), com.quadcap.sql.AggregateCursor.next(), com.quadcap.sql.PredicateCursor.prev(), and com.quadcap.sql.UnaryExpression.uniqueValue(). |
|
|
Some cursors have rows where the rows can be identified by row id, and sometimes the cursors even know the row id for the current row. If you know, tell us here! If you don't know, just return 0. Implemented in com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, and com.quadcap.sql.MergeCursor. Referenced by com.quadcap.sql.FilterCursor.getRowId(), and com.quadcap.sql.JoinInnerCursor.makeTemporaryIndexForTable(). |
|
|
Return the cursor's session.
Implemented in com.quadcap.sql.CursorImpl. |
|
|
Some cursors are, or can be viewed as, tables. If your cursor is such a type, return your table here, otherwise simply return null. Implemented in com.quadcap.sql.CursorImpl, and com.quadcap.sql.IndexCursor. |
|
|
Insert the specified row into the cursor's underlying table.
Implemented in com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.IndexCursor, com.quadcap.sql.ItemsCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.ViewCursor.insertRow(), com.quadcap.sql.View.insertRow(), com.quadcap.sql.ItemsCursor.insertRow(), and com.quadcap.sql.FilterCursor.insertRow(). |
|
|
Return true if the specified column is writable.
Implemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.GroupByCursor, com.quadcap.sql.IndexCursor, com.quadcap.sql.ItemsCursor, com.quadcap.sql.JoinCursor, com.quadcap.sql.MergeCursor, com.quadcap.sql.StaticCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.ViewCursor.isWritable(), com.quadcap.sql.ItemsCursor.isWritable(), and com.quadcap.sql.FilterCursor.isWritable(). |
|
|
Advance the cursor and return true if we advanced to a valid row.
Implemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.GroupByCursor, com.quadcap.sql.HavingCursor, com.quadcap.sql.IndexCursor, com.quadcap.sql.ItemsCursor, com.quadcap.sql.JoinCursor, com.quadcap.sql.JoinUnionCursor, com.quadcap.sql.MergeCursor, com.quadcap.sql.MultiCursor, com.quadcap.sql.PredicateCursor, com.quadcap.sql.StaticCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.CheckConstraint.add(), com.quadcap.sql.JoinCursor.anext(), com.quadcap.sql.JoinCursor.bnext(), com.quadcap.sql.StmtUpdate.execute(), com.quadcap.sql.StmtInsert.execute(), com.quadcap.sql.StmtDelete.execute(), com.quadcap.sql.UnaryExpression.existsValue(), com.quadcap.sql.SelectExpression.getValue(), com.quadcap.sql.QuantifiedCompare.getValue(), com.quadcap.sql.InExpression.getValue2(), com.quadcap.sql.InExpression.InSessionState.init(), com.quadcap.sql.JoinInnerCursor.makeTemporaryIndexForTable(), com.quadcap.sql.JoinInnerCursor.makeTemporaryIndexForView(), com.quadcap.sql.InExpression.InSessionState.matchCorrelated(), com.quadcap.sql.ViewCursor.next(), com.quadcap.sql.PredicateCursor.next(), com.quadcap.sql.MultiCursor.next(), com.quadcap.sql.ItemsCursor.next(), com.quadcap.sql.HavingCursor.next(), com.quadcap.sql.FilterCursor.next(), com.quadcap.sql.AggregateCursor.next(), and com.quadcap.sql.UnaryExpression.uniqueValue(). |
|
|
Move the cursor back one row and return true if we moved back to a valid row.
Implemented in com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.IndexCursor, com.quadcap.sql.MultiCursor, com.quadcap.sql.PredicateCursor, and com.quadcap.sql.StaticCursor. Referenced by com.quadcap.sql.PredicateCursor.prev(), and com.quadcap.sql.FilterCursor.prev(). |
|
||||||||||||
|
An attempt at an API to allow cursor reuse.
Implemented in com.quadcap.sql.CursorImpl, and com.quadcap.sql.IndexCursor. |
|
|
Set the cursor context in which this subquery is executing.
Implemented in com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, and com.quadcap.sql.ItemsCursor. Referenced by com.quadcap.sql.SelectExpression.getCursor(), com.quadcap.sql.ItemsCursor.setOuterCursor(), and com.quadcap.sql.FilterCursor.setOuterCursor(). |
|
|
If the underlying implementation knows, or can compute cheaply, the actual size of the ResultSet, it should return a non-negative number here.
If the size is unknown and it would be expensive to compute it (i.e., on the order of Implemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.BC_Cursor, com.quadcap.sql.FilterCursor, com.quadcap.sql.GroupByCursor, com.quadcap.sql.ItemsCursor, com.quadcap.sql.JoinCursor, com.quadcap.sql.MergeCursor, com.quadcap.sql.StaticCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.ItemsCursor.size(), and com.quadcap.sql.FilterCursor.size(). |
|
|
Replace the current cursor row with the specified row.
Implemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.BC_Cursor, com.quadcap.sql.CursorImpl, com.quadcap.sql.FilterCursor, com.quadcap.sql.GroupByCursor, com.quadcap.sql.HavingCursor, com.quadcap.sql.IndexCursor, com.quadcap.sql.ItemsCursor, com.quadcap.sql.JoinCursor, com.quadcap.sql.MergeCursor, com.quadcap.sql.StaticCursor, and com.quadcap.sql.ViewCursor. Referenced by com.quadcap.sql.StmtUpdate.execute(), com.quadcap.sql.ViewCursor.updateRow(), com.quadcap.sql.ItemsCursor.updateRow(), com.quadcap.sql.HavingCursor.updateRow(), and com.quadcap.sql.FilterCursor.updateRow(). |