## org.springframework.jdbc.core.metadata
Class PostgresTableMetaDataProvider

    java.lang.Object
      org.springframework.jdbc.core.metadata.GenericTableMetaDataProvider
          org.springframework.jdbc.core.metadata.PostgresTableMetaDataProvider

All Implemented Interfaces:
  TableMetaDataProvider

    public class PostgresTableMetaDataProvider

extends GenericTableMetaDataProvider

The PostgreSQL specific implementation of the `TableMetaDataProvider`. Suports a feature for retreiving generated keys without the JDBC 3.0 getGeneratedKeys support.

Since:
  2.5
Author:
  Thomas Risberg

Field Summary

Fields inherited from class org.springframework.jdbc.core.metadata.GenericTableMetaDataProvider
`logger`

Constructor Summary
`PostgresTableMetaDataProvider(DatabaseMetaData databaseMetaData)`

Method Summary
`String` `getSimpleQueryForGetGeneratedKey(String tableName, String keyColumnName)` Get the simple query to retrieve a generated key
`boolean` `isGetGeneratedKeysSimulated()` Does this database support a simple quey to retrieve the generated key whe the JDBC 3.0 feature of retreiving generated keys is not supported `DatabaseMetaData.supportsGetGeneratedKeys()`

Methods inherited from class org.springframework.jdbc.core.metadata.GenericTableMetaDataProvider

`catalogNameToUse, getDatabaseVersion, getDefaultSchema, getNativeJdbcExtractor, getTableParameterMetaData, initializeWithMetaData, initializeWithTableColumnMetaData, isGeneratedKeysColumnNameArraySupported, isGetGeneratedKeysSupported, isStoresLowerCaseIdentifiers, isStoresUpperCaseIdentifiers, isTableColumnMetaDataUsed, metaDataCatalogNameToUse, metaDataSchemaNameToUse, schemaNameToUse, setGeneratedKeysColumnNameArraySupported, setGetGeneratedKeysSupported, setNativeJdbcExtractor, setStoresLowerCaseIdentifiers, setStoresUpperCaseIdentifiers, tableNameToUse`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PostgresTableMetaDataProvider

    public PostgresTableMetaDataProvider(DatabaseMetaData databaseMetaData)
                                  throws SQLException

Throws:
  `SQLException`

Method Detail

### isGetGeneratedKeysSimulated

    public boolean isGetGeneratedKeysSimulated()

  Description copied from interface: `TableMetaDataProvider`
  Does this database support a simple quey to retrieve the generated key whe the JDBC 3.0 feature of retreiving generated keys is not supported `DatabaseMetaData.supportsGetGeneratedKeys()`

  Specified by:
    `isGetGeneratedKeysSimulated` in interface `TableMetaDataProvider`
  Overrides:
    `isGetGeneratedKeysSimulated` in class `GenericTableMetaDataProvider`

### getSimpleQueryForGetGeneratedKey

    public String getSimpleQueryForGetGeneratedKey(String tableName,
                                                   String keyColumnName)

  Description copied from interface: `TableMetaDataProvider`
  Get the simple query to retrieve a generated key

  Specified by:
    `getSimpleQueryForGetGeneratedKey` in interface `TableMetaDataProvider`
  Overrides:
    `getSimpleQueryForGetGeneratedKey` in class `GenericTableMetaDataProvider`