com.smartgwt.client.types

## Enum SQLPagingStrategy

- java.lang.Object
- - java.lang.Enum<SQLPagingStrategy>
  - - com.smartgwt.client.types.SQLPagingStrategy

- All Implemented Interfaces:
    ValueEnum, java.io.Serializable, java.lang.Comparable<SQLPagingStrategy>

      public enum SQLPagingStrategy
      extends java.lang.Enum<SQLPagingStrategy>
      implements ValueEnum

  The technique Smart GWT Server's SQL DataSource should use to select a "page" of data from a table.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `DROPATSERVER` Implement the paging behavior by fetching the entire resultset from the database and dropping any unnecessary rows on the server before returning the data to the client.
    `JDBCSCROLL` Implement the paging behavior by use of the `absolute()` method of the JDBC `ResultSet`.
    `NONE` No paging behavior: we always return the entire resultset to the client.
    `SQLLIMIT` Specify the paging directly in the SQL query we generate.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getValue()`
    `static SQLPagingStrategy` | `valueOf(java.lang.String name)` Returns the enum constant of this type with the specified name.
    `static SQLPagingStrategy[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### SQLLIMIT

          public static final SQLPagingStrategy SQLLIMIT

      Specify the paging directly in the SQL query we generate. The way this is done varies considerably from database to database: with some it is a straightforward built-in facility while others require arcane tricks or simply don't support the idea. This is the most efficient method, where available. Note that this strategy is not supported for operations that make use of a `customSQL` clause, because it depends upon being able to determine the size of the whole dataset without actually retrieving the whole dataset. Ordinary operations do this by means of an automatically-generated "row count query", but we cannot generate such a query for a `customSQL` operation.

      If this enumerated value is used in a `Component XML` file or server-side DataSource descriptor (.ds.xml file), use the value "sqlLimit".

    - #### JDBCSCROLL

          public static final SQLPagingStrategy JDBCSCROLL

      Implement the paging behavior by use of the `absolute()` method of the JDBC `ResultSet`.

      If this enumerated value is used in a `Component XML` file or server-side DataSource descriptor (.ds.xml file), use the value "jdbcScroll".

    - #### DROPATSERVER

          public static final SQLPagingStrategy DROPATSERVER

      Implement the paging behavior by fetching the entire resultset from the database and dropping any unnecessary rows on the server before returning the data to the client. This approach is extremely inefficient, but also extremely straightforward; it is intended as a fallback option, for situations where the more sophisticated approaches cause problems (a JDBC driver that throws vague exceptions when `absolute()` is called, for example)

      If this enumerated value is used in a `Component XML` file or server-side DataSource descriptor (.ds.xml file), use the value "dropAtServer".

    - #### NONE

          public static final SQLPagingStrategy NONE

      No paging behavior: we always return the entire resultset to the client.

      If this enumerated value is used in a `Component XML` file or server-side DataSource descriptor (.ds.xml file), use the value "none".

  - ### Method Detail

    - #### values

          public static SQLPagingStrategy[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (SQLPagingStrategy c : SQLPagingStrategy.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static SQLPagingStrategy valueOf(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null

    - #### getValue

          public java.lang.String getValue()

      Specified by:
        `getValue` in interface `ValueEnum`