Top Description Methods
org.apache.derby.iapi.sql.execute

public Interface ExecIndexRow

extends ExecRow
Known Direct Implementers
org.apache.derby.impl.sql.execute.IndexRow, org.apache.derby.impl.sql.execute.IndexValueRow

This is an extension of ExecRow for use with indexes and sorting.

Method Summary

Modifier and TypeMethod and Description
public boolean

Returns:

true if we are to use ordered null semantics on the given column
areNullsOrdered
(int
The position of the column (zero-based) for which we want to check if ordered null semantics are used.
columnPosition
)

Return true if orderedNulls was called on this ExecIndexRow for the given column position.

public void
execRowToExecIndexRow(ExecRow valueRow)

Turn the ExecRow into an ExecIndexRow.

public void
orderedNulls(int
The position of the column that uses ordered null semantics (zero-based).
columnPosition
)

These two methods are a sort of a hack.

Inherited from org.apache.derby.iapi.sql.execute.ExecRow:
cloneColumngetClonegetClonegetNewNullRowgetNewObjectArraygetRowArraygetRowArrayCloneresetRowArraysetRowArray

Method Detail

areNullsOrderedback to summary
public boolean areNullsOrdered(int columnPosition)

Return true if orderedNulls was called on this ExecIndexRow for the given column position.

Parameters
columnPosition:int

The position of the column (zero-based) for which we want to check if ordered null semantics are used.

Returns:boolean

true if we are to use ordered null semantics on the given column

execRowToExecIndexRowback to summary
public void execRowToExecIndexRow(ExecRow valueRow)

Turn the ExecRow into an ExecIndexRow.

orderedNullsback to summary
public void orderedNulls(int columnPosition)

These two methods are a sort of a hack. The store implements ordered null semantics for start and stop positioning, which is correct for IS NULL and incorrect for everything else. To work around this, TableScanResultSet will check whether the start and stop positions have NULL in any column position other than for an IS NULL check. If so, it won't do the scan (that is, it will return no rows). This method is to inform this ExecIndexRow (which can be used for start and stop positioning) that the given column uses ordered null semantics.

Parameters
columnPosition:int

The position of the column that uses ordered null semantics (zero-based).