Package org.postgresql

# Interface PGStatement

All Known Subinterfaces:
  `BaseStatement`

All Known Implementing Classes:
  `PgStatement`

public interface PGStatement
This interface defines the public PostgreSQL extensions to java.sql.Statement. All Statements constructed by the PostgreSQL driver implement PGStatement.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final long`
`DATE_NEGATIVE_INFINITY`
`static final long`
`DATE_NEGATIVE_SMALLER_INFINITY`
`static final long`
`DATE_POSITIVE_INFINITY`
`static final long`
`DATE_POSITIVE_SMALLER_INFINITY`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`getAdaptiveFetch()`
Get state of adaptive fetch for statement.
`long`
`getLastOID()`
Returns the Last inserted/updated oid.
`int`
`getPrepareThreshold()`
Gets the server-side prepare reuse threshold in use for this statement.
`boolean`
`isUseServerPrepare()`
Checks if this statement will be executed as a server-prepared statement.
`void`
`setAdaptiveFetch(boolean adaptiveFetch)`
Turn on/off adaptive fetch for statement.
`void`
`setPrepareThreshold(int threshold)`
Sets the reuse threshold for using server-prepared statements.
`void`
`setUseServerPrepare(boolean flag)`
Deprecated.
As of build 302, replaced by `setPrepareThreshold(int)`

## Field Details

### DATE_POSITIVE_INFINITY

static final long DATE_POSITIVE_INFINITY

See Also:
  - Constant Field Values

### DATE_NEGATIVE_INFINITY

static final long DATE_NEGATIVE_INFINITY

See Also:
  - Constant Field Values

### DATE_POSITIVE_SMALLER_INFINITY

static final long DATE_POSITIVE_SMALLER_INFINITY

See Also:
  - Constant Field Values

### DATE_NEGATIVE_SMALLER_INFINITY

static final long DATE_NEGATIVE_SMALLER_INFINITY

See Also:
  - Constant Field Values

## Method Details

### getLastOID

long getLastOID() throws SQLException
Returns the Last inserted/updated oid.

Returns:
  OID of last insert
Throws:
  `SQLException` - if something goes wrong
Since:
  7.3

### setUseServerPrepare

@Deprecated void setUseServerPrepare(boolean flag) throws SQLException
Deprecated.
As of build 302, replaced by `setPrepareThreshold(int)`
Turn on the use of prepared statements in the server (server side prepared statements are unrelated to jdbc PreparedStatements) As of build 302, this method is equivalent to `setPrepareThreshold(1)`.

Parameters:
  `flag` - use server prepare
Throws:
  `SQLException` - if something goes wrong
Since:
  7.3

### isUseServerPrepare

boolean isUseServerPrepare()
Checks if this statement will be executed as a server-prepared statement. A return value of `true` indicates that the next execution of the statement will be done as a server-prepared statement, assuming the underlying protocol supports it.

Returns:
  true if the next reuse of this statement will use a server-prepared statement

### setPrepareThreshold

void setPrepareThreshold(int threshold) throws SQLException

Sets the reuse threshold for using server-prepared statements.

If `threshold` is a non-zero value N, the Nth and subsequent reuses of a PreparedStatement will use server-side prepare.

If `threshold` is zero, server-side prepare will not be used.

The reuse threshold is only used by PreparedStatement and CallableStatement objects; it is ignored for plain Statements.

Parameters:
  `threshold` - the new threshold for this statement
Throws:
  `SQLException` - if an exception occurs while changing the threshold
Since:
  build 302

### getPrepareThreshold

int getPrepareThreshold()
Gets the server-side prepare reuse threshold in use for this statement.

Returns:
  the current threshold
Since:
  build 302
See Also:
  - `setPrepareThreshold(int)`

### setAdaptiveFetch

void setAdaptiveFetch(boolean adaptiveFetch)
Turn on/off adaptive fetch for statement. Existing resultSets won't be affected by change here.

Parameters:
  `adaptiveFetch` - desired state of adaptive fetch.

### getAdaptiveFetch

boolean getAdaptiveFetch()
Get state of adaptive fetch for statement.

Returns:
  state of adaptive fetch (turned on or off)