パッケージ org.postgresql.core

クラス QueryExecutorBase

java.lang.Object
org.postgresql.core.QueryExecutorBase
すべての実装されたインタフェース:
QueryExecutor, TypeTransferModeRegistry
直系の既知のサブクラス:
QueryExecutorImpl

public abstract class QueryExecutorBase extends Object implements QueryExecutor
  • フィールド詳細

    • pgStream

      protected final PGStream pgStream
    • closeAction

      protected final QueryExecutorCloseAction closeAction
    • logServerErrorDetail

      protected final boolean logServerErrorDetail
    • lock

      protected final ResourceLock lock
    • lockCondition

      protected final Condition lockCondition
  • コンストラクタの詳細

  • メソッドの詳細

    • createCloseAction

      protected QueryExecutorCloseAction createCloseAction()
    • sendCloseMessage

      @Deprecated protected abstract void sendCloseMessage() throws IOException
      推奨されていません。
      use getCloseAction() instead
      Sends "terminate connection" message to the backend.
      例外:
      IOException - in case connection termination fails
    • setNetworkTimeout

      public void setNetworkTimeout(int milliseconds) throws IOException
      定義:
      setNetworkTimeout インタフェース内 QueryExecutor
      例外:
      IOException
    • getNetworkTimeout

      public int getNetworkTimeout() throws IOException
      定義:
      getNetworkTimeout インタフェース内 QueryExecutor
      例外:
      IOException
    • getHostSpec

      public HostSpec getHostSpec()
      定義:
      getHostSpec インタフェース内 QueryExecutor
      戻り値:
      the host and port this connection is connected to.
    • getUser

      public String getUser()
      定義:
      getUser インタフェース内 QueryExecutor
      戻り値:
      the user this connection authenticated as.
    • getDatabase

      public String getDatabase()
      定義:
      getDatabase インタフェース内 QueryExecutor
      戻り値:
      the database this connection is connected to.
    • setBackendKeyData

      public void setBackendKeyData(int cancelPid, int cancelKey)
    • getBackendPID

      public int getBackendPID()
      インタフェースからコピーされた説明: QueryExecutor
      Return the process ID (PID) of the backend server process handling this connection.
      定義:
      getBackendPID インタフェース内 QueryExecutor
      戻り値:
      process ID (PID) of the backend server process handling this connection
    • abort

      public void abort()
      インタフェースからコピーされた説明: QueryExecutor
      Abort at network level without sending the Terminate message to the backend.
      定義:
      abort インタフェース内 QueryExecutor
    • getCloseAction

      public Closeable getCloseAction()
      インタフェースからコピーされた説明: QueryExecutor
      Returns an action that would close the connection cleanly. The returned object should refer only the minimum subset of objects required for proper resource cleanup. For instance, it should better not hold a strong reference to QueryExecutor.
      定義:
      getCloseAction インタフェース内 QueryExecutor
      戻り値:
      action that would close the connection cleanly.
    • close

      public void close()
      インタフェースからコピーされた説明: QueryExecutor
      Close this connection cleanly.
      定義:
      close インタフェース内 QueryExecutor
    • isClosed

      public boolean isClosed()
      インタフェースからコピーされた説明: QueryExecutor
      Check if this connection is closed.
      定義:
      isClosed インタフェース内 QueryExecutor
      戻り値:
      true iff the connection is closed.
    • sendQueryCancel

      public void sendQueryCancel() throws SQLException
      インタフェースからコピーされた説明: QueryExecutor
      Sends a query cancellation for this connection.
      定義:
      sendQueryCancel インタフェース内 QueryExecutor
      例外:
      SQLException - if something goes wrong.
    • addWarning

      public void addWarning(SQLWarning newWarning)
    • addNotification

      public void addNotification(PGNotification notification)
    • getNotifications

      public PGNotification[] getNotifications() throws SQLException
      インタフェースからコピーされた説明: QueryExecutor
      Retrieve and clear the set of asynchronous notifications pending on this connection.
      定義:
      getNotifications インタフェース内 QueryExecutor
      戻り値:
      an array of notifications; if there are no notifications, an empty array is returned.
      例外:
      SQLException - if and error occurs while fetching notifications
    • getWarnings

      public @Nullable SQLWarning getWarnings()
      インタフェースからコピーされた説明: QueryExecutor
      Retrieve and clear the chain of warnings accumulated on this connection.
      定義:
      getWarnings インタフェース内 QueryExecutor
      戻り値:
      the first SQLWarning in the chain; subsequent warnings can be found via SQLWarning.getNextWarning().
    • getServerVersion

      public String getServerVersion()
      インタフェースからコピーされた説明: QueryExecutor

      Return the server version from the server_version GUC.

      Note that there's no requirement for this to be numeric or of the form x.y.z. PostgreSQL development releases usually have the format x.ydevel e.g. 9.4devel; betas usually x.ybetan e.g. 9.4beta1. The --with-extra-version configure option may add an arbitrary string to this.

      Don't use this string for logic, only use it when displaying the server version to the user. Prefer getServerVersionNum() for all logic purposes.

      定義:
      getServerVersion インタフェース内 QueryExecutor
      戻り値:
      the server version string from the server_version GUC
    • getServerVersionNum

      public int getServerVersionNum()
      インタフェースからコピーされた説明: QueryExecutor

      Get a machine-readable server version.

      This returns the value of the server_version_num GUC. If no such GUC exists, it falls back on attempting to parse the text server version for the major version. If there's no minor version (e.g. a devel or beta release) then the minor version is set to zero. If the version could not be parsed, zero is returned.

      定義:
      getServerVersionNum インタフェース内 QueryExecutor
      戻り値:
      the server version in numeric XXYYZZ form, eg 090401, from server_version_num
    • setServerVersion

      public void setServerVersion(String serverVersion)
    • setServerVersionNum

      public void setServerVersionNum(int serverVersionNum)
    • setTransactionState

      public void setTransactionState(TransactionState state)
    • setStandardConformingStrings

      public void setStandardConformingStrings(boolean value)
    • getStandardConformingStrings

      public boolean getStandardConformingStrings()
      インタフェースからコピーされた説明: QueryExecutor
      Returns whether the server treats string-literals according to the SQL standard or if it uses traditional PostgreSQL escaping rules. Versions up to 8.1 always treated backslashes as escape characters in string-literals. Since 8.2, this depends on the value of the standard_conforming_strings server variable.
      定義:
      getStandardConformingStrings インタフェース内 QueryExecutor
      戻り値:
      true if the server treats string literals according to the SQL standard
    • getQuoteReturningIdentifiers

      public boolean getQuoteReturningIdentifiers()
      定義:
      getQuoteReturningIdentifiers インタフェース内 QueryExecutor
      戻り値:
      true if we are going to quote identifier provided in the returning array default is true
    • getTransactionState

      public TransactionState getTransactionState()
      インタフェースからコピーされた説明: QueryExecutor
      Get the current transaction state of this connection.
      定義:
      getTransactionState インタフェース内 QueryExecutor
      戻り値:
      a ProtocolConnection.TRANSACTION_* constant.
    • setEncoding

      public void setEncoding(Encoding encoding) throws IOException
      例外:
      IOException
    • getEncoding

      public Encoding getEncoding()
      定義:
      getEncoding インタフェース内 QueryExecutor
      戻り値:
      the current encoding in use by this connection
    • isReWriteBatchedInsertsEnabled

      public boolean isReWriteBatchedInsertsEnabled()
      定義:
      isReWriteBatchedInsertsEnabled インタフェース内 QueryExecutor
    • borrowQuery

      public final CachedQuery borrowQuery(String sql) throws SQLException
      定義:
      borrowQuery インタフェース内 QueryExecutor
      例外:
      SQLException
    • borrowCallableQuery

      public final CachedQuery borrowCallableQuery(String sql) throws SQLException
      定義:
      borrowCallableQuery インタフェース内 QueryExecutor
      例外:
      SQLException
    • borrowReturningQuery

      public final CachedQuery borrowReturningQuery(String sql, String @Nullable [] columnNames) throws SQLException
      定義:
      borrowReturningQuery インタフェース内 QueryExecutor
      例外:
      SQLException
    • borrowQueryByKey

      public CachedQuery borrowQueryByKey(Object key) throws SQLException
      定義:
      borrowQueryByKey インタフェース内 QueryExecutor
      例外:
      SQLException
    • releaseQuery

      public void releaseQuery(CachedQuery cachedQuery)
      定義:
      releaseQuery インタフェース内 QueryExecutor
    • createQueryKey

      public final Object createQueryKey(String sql, boolean escapeProcessing, boolean isParameterized, String @Nullable ... columnNames)
      定義:
      createQueryKey インタフェース内 QueryExecutor
    • createQueryByKey

      public CachedQuery createQueryByKey(Object key) throws SQLException
      定義:
      createQueryByKey インタフェース内 QueryExecutor
      例外:
      SQLException
    • createQuery

      public final CachedQuery createQuery(String sql, boolean escapeProcessing, boolean isParameterized, String @Nullable ... columnNames) throws SQLException
      定義:
      createQuery インタフェース内 QueryExecutor
      例外:
      SQLException
    • isColumnSanitiserDisabled

      public boolean isColumnSanitiserDisabled()
      定義:
      isColumnSanitiserDisabled インタフェース内 QueryExecutor
    • getEscapeSyntaxCallMode

      public EscapeSyntaxCallMode getEscapeSyntaxCallMode()
      定義:
      getEscapeSyntaxCallMode インタフェース内 QueryExecutor
    • getPreferQueryMode

      public PreferQueryMode getPreferQueryMode()
      定義:
      getPreferQueryMode インタフェース内 QueryExecutor
    • setPreferQueryMode

      public void setPreferQueryMode(PreferQueryMode mode)
      定義:
      setPreferQueryMode インタフェース内 QueryExecutor
    • getAutoSave

      public AutoSave getAutoSave()
      定義:
      getAutoSave インタフェース内 QueryExecutor
    • setAutoSave

      public void setAutoSave(AutoSave autoSave)
      定義:
      setAutoSave インタフェース内 QueryExecutor
    • willHealViaReparse

      protected boolean willHealViaReparse(SQLException e)
    • willHealOnRetry

      public boolean willHealOnRetry(SQLException e)
      定義:
      willHealOnRetry インタフェース内 QueryExecutor
    • isFlushCacheOnDeallocate

      public boolean isFlushCacheOnDeallocate()
    • setFlushCacheOnDeallocate

      public void setFlushCacheOnDeallocate(boolean flushCacheOnDeallocate)
      インタフェースからコピーされた説明: QueryExecutor
      By default, the connection resets statement cache in case deallocate all/discard all message is observed. This API allows to disable that feature for testing purposes.
      定義:
      setFlushCacheOnDeallocate インタフェース内 QueryExecutor
      パラメータ:
      flushCacheOnDeallocate - true if statement cache should be reset when "deallocate/discard" message observed
    • hasNotifications

      protected boolean hasNotifications()
    • getParameterStatuses

      public final Map<String,String> getParameterStatuses()
      定義:
      getParameterStatuses インタフェース内 QueryExecutor
    • getParameterStatus

      public final @Nullable String getParameterStatus(String parameterName)
      定義:
      getParameterStatus インタフェース内 QueryExecutor
    • onParameterStatus

      protected void onParameterStatus(String parameterName, String parameterStatus)
      Update the parameter status map in response to a new ParameterStatus wire protocol message.

      The server sends ParameterStatus messages when GUC_REPORT settings are initially assigned and whenever they change.

      A future version may invoke a client-defined listener class at this point, so this should be the only access path.

      Keys are case-insensitive and case-preserving.

      The server doesn't provide a way to report deletion of a reportable parameter so we don't expose one here.

      パラメータ:
      parameterName - case-insensitive case-preserving name of parameter to create or update
      parameterStatus - new value of parameter
      関連項目: