LimitHandler for databases which support the
ANSI SQL standard syntax FETCH FIRST m ROWS ONLY
and OFFSET n ROWS FETCH NEXT m ROWS ONLY.
| Modifier and Type | Field and Description |
|---|---|
| public boolean | |
| public static final Oracle12LimitHandler | |
| public boolean |
| Access | Constructor and Description |
|---|---|
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| public boolean | bindLimitParametersInReverseOrder()
Overrides org. |
| private int | |
| public String | processSql(String
the SQL query to process. sql, RowSelection the selection criteria for rows. selection)Overrides org. Implements org. |
| public String | processSql(String
the SQL query to process. sql, QueryParameters the queryParameters. queryParameters)Overrides default org. |
| private String | |
| private String | |
| public final boolean | supportsLimit()
Overrides org. Implements org. |
| public boolean | useMaxForLimit()
Overrides org. |
| bindLimitParametersInReverseOrder | back to summary |
|---|---|
| public boolean bindLimitParametersInReverseOrder | |
| INSTANCE | back to summary |
|---|---|
| public static final Oracle12LimitHandler INSTANCE | |
| useMaxForLimit | back to summary |
|---|---|
| public boolean useMaxForLimit | |
| Oracle12LimitHandler | back to summary |
|---|---|
| pack-priv Oracle12LimitHandler() | |
| bindLimitParametersInReverseOrder | back to summary |
|---|---|
| public boolean bindLimitParametersInReverseOrder() Overrides org. Doc from org. ANSI SQL defines the LIMIT clause to be in the form LIMIT offset, limit. Does this dialect require us to bind the parameters in reverse order?
| |
| getForUpdateIndex | back to summary |
|---|---|
| private int getForUpdateIndex(String sql) | |
| processSql | back to summary |
|---|---|
| public String processSql(String sql, RowSelection selection) Overrides org. Implements org. Doc from org. Return processed SQL query.
| |
| processSql | back to summary |
|---|---|
| public String processSql(String sql, QueryParameters queryParameters) Overrides default org. Doc from org. Return processed SQL query.
| |
| processSql | back to summary |
|---|---|
| private String processSql(String sql, int forUpdateIndex, boolean hasFirstRow) | |
| processSqlOffsetFetch | back to summary |
|---|---|
| private String processSqlOffsetFetch(String sql, boolean hasFirstRow) | |
| supportsLimit | back to summary |
|---|---|
| public final boolean supportsLimit() Overrides org. Implements org. Doc from org. Does this handler support some form of limiting query results via a SQL clause?
| |
| useMaxForLimit | back to summary |
|---|---|
| public boolean useMaxForLimit() Overrides org. Doc from org. Does the LIMIT clause take a "maximum" row number instead of a total number of returned rows? This is easiest understood via an example. Consider you have a table with 20 rows, but you only want to retrieve rows number 11 through 20. Generally, a limit with offset would say that the offset = 11 and the limit = 10 (we only want 10 rows at a time); this is specifying the total number of returned rows. Some dialects require that we instead specify offset = 11 and limit = 20, where 20 is the "last" row we want relative to offset (i.e. total number of rows = 20 - 11 = 9) So essentially, is limit relative from offset? Or is limit absolute?
| |