public class PgDatabaseMetaData extends Object implements DatabaseMetaData
| Modifier and Type | Field and Description |
|---|---|
protected PgConnection |
connection |
attributeNoNulls, attributeNullable, attributeNullableUnknown, bestRowNotPseudo, bestRowPseudo, bestRowSession, bestRowTemporary, bestRowTransaction, bestRowUnknown, columnNoNulls, columnNullable, columnNullableUnknown, functionColumnIn, functionColumnInOut, functionColumnOut, functionColumnResult, functionColumnUnknown, functionNoNulls, functionNoTable, functionNullable, functionNullableUnknown, functionResultUnknown, functionReturn, functionReturnsTable, importedKeyCascade, importedKeyInitiallyDeferred, importedKeyInitiallyImmediate, importedKeyNoAction, importedKeyNotDeferrable, importedKeyRestrict, importedKeySetDefault, importedKeySetNull, procedureColumnIn, procedureColumnInOut, procedureColumnOut, procedureColumnResult, procedureColumnReturn, procedureColumnUnknown, procedureNoNulls, procedureNoResult, procedureNullable, procedureNullableUnknown, procedureResultUnknown, procedureReturnsResult, sqlStateSQL, sqlStateSQL99, sqlStateXOpen, tableIndexClustered, tableIndexHashed, tableIndexOther, tableIndexStatistic, typeNoNulls, typeNullable, typeNullableUnknown, typePredBasic, typePredChar, typePredNone, typeSearchable, versionColumnNotPseudo, versionColumnPseudo, versionColumnUnknown| Constructor and Description |
|---|
PgDatabaseMetaData(PgConnection conn) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
allProceduresAreCallable() |
boolean |
allTablesAreSelectable() |
boolean |
autoCommitFailureClosesAllResultSets() |
protected Statement |
createMetaDataStatement() |
boolean |
dataDefinitionCausesTransactionCommit()
Does a data definition statement within a transaction force the transaction to commit? It seems
to mean something like:
|
boolean |
dataDefinitionIgnoredInTransactions() |
boolean |
deletesAreDetected(int i) |
boolean |
doesMaxRowSizeIncludeBlobs() |
protected String |
escapeQuotes(String s)
Turn the provided value into a valid string literal for direct inclusion into a query.
|
boolean |
generatedKeyAlwaysReturned() |
ResultSet |
getAttributes(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String typeNamePattern,
@Nullable String attributeNamePattern) |
ResultSet |
getBestRowIdentifier(@Nullable String catalog,
@Nullable String schema,
String table,
int scope,
boolean nullable) |
ResultSet |
getCatalogs()
PostgreSQL does not support multiple catalogs from a single connection, so to reduce confusion
we only return the current catalog.
|
String |
getCatalogSeparator() |
String |
getCatalogTerm() |
ResultSet |
getClientInfoProperties() |
ResultSet |
getColumnPrivileges(@Nullable String catalog,
@Nullable String schema,
String table,
@Nullable String columnNamePattern) |
ResultSet |
getColumns(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String tableNamePattern,
@Nullable String columnNamePattern) |
Connection |
getConnection() |
ResultSet |
getCrossReference(@Nullable String primaryCatalog,
@Nullable String primarySchema,
String primaryTable,
@Nullable String foreignCatalog,
@Nullable String foreignSchema,
String foreignTable) |
int |
getDatabaseMajorVersion() |
int |
getDatabaseMinorVersion() |
String |
getDatabaseProductName()
Retrieves the name of this database product.
|
String |
getDatabaseProductVersion() |
int |
getDefaultTransactionIsolation() |
int |
getDriverMajorVersion() |
int |
getDriverMinorVersion() |
String |
getDriverName() |
String |
getDriverVersion() |
ResultSet |
getExportedKeys(@Nullable String catalog,
@Nullable String schema,
String table) |
String |
getExtraNameCharacters() |
ResultSet |
getFunctionColumns(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String functionNamePattern,
@Nullable String columnNamePattern) |
ResultSet |
getFunctions(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String functionNamePattern) |
String |
getIdentifierQuoteString()
What is the string used to quote SQL identifiers? This returns a space if identifier quoting
isn't supported.
|
protected ResultSet |
getImportedExportedKeys(@Nullable String primaryCatalog,
@Nullable String primarySchema,
@Nullable String primaryTable,
@Nullable String foreignCatalog,
@Nullable String foreignSchema,
@Nullable String foreignTable) |
ResultSet |
getImportedKeys(@Nullable String catalog,
@Nullable String schema,
String table) |
ResultSet |
getIndexInfo(@Nullable String catalog,
@Nullable String schema,
String tableName,
boolean unique,
boolean approximate) |
int |
getJDBCMajorVersion() |
int |
getJDBCMinorVersion() |
int |
getMaxBinaryLiteralLength() |
int |
getMaxCatalogNameLength() |
int |
getMaxCharLiteralLength() |
int |
getMaxColumnNameLength() |
int |
getMaxColumnsInGroupBy() |
int |
getMaxColumnsInIndex() |
int |
getMaxColumnsInOrderBy() |
int |
getMaxColumnsInSelect() |
int |
getMaxColumnsInTable()
What is the maximum number of columns in a table? From the CREATE TABLE reference
page...
|
int |
getMaxConnections()
How many active connection can we have at a time to this database? Well, since it
depends on postmaster, which just does a listen() followed by an accept() and fork(), its
basically very high.
|
int |
getMaxCursorNameLength() |
protected int |
getMaxIndexKeys() |
int |
getMaxIndexLength() |
long |
getMaxLogicalLobSize() |
protected int |
getMaxNameLength() |
int |
getMaxProcedureNameLength() |
int |
getMaxRowSize() |
int |
getMaxSchemaNameLength() |
int |
getMaxStatementLength() |
int |
getMaxStatements() |
int |
getMaxTableNameLength() |
int |
getMaxTablesInSelect() |
int |
getMaxUserNameLength() |
String |
getNumericFunctions() |
ResultSet |
getPrimaryKeys(@Nullable String catalog,
@Nullable String schema,
String table) |
protected ResultSet |
getPrimaryUniqueKeys(@Nullable String catalog,
@Nullable String schema,
String table) |
ResultSet |
getProcedureColumns(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String procedureNamePattern,
@Nullable String columnNamePattern) |
ResultSet |
getProcedures(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String procedureNamePattern) |
String |
getProcedureTerm() |
ResultSet |
getPseudoColumns(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String tableNamePattern,
@Nullable String columnNamePattern) |
int |
getResultSetHoldability() |
RowIdLifetime |
getRowIdLifetime() |
ResultSet |
getSchemas() |
ResultSet |
getSchemas(@Nullable String catalog,
@Nullable String schemaPattern) |
String |
getSchemaTerm() |
String |
getSearchStringEscape() |
String |
getSQLKeywords() |
int |
getSQLStateType() |
String |
getStringFunctions() |
ResultSet |
getSuperTables(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String tableNamePattern) |
ResultSet |
getSuperTypes(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String typeNamePattern) |
String |
getSystemFunctions() |
ResultSet |
getTablePrivileges(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String tableNamePattern) |
ResultSet |
getTables(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String tableNamePattern,
String[] types) |
ResultSet |
getTableTypes() |
String |
getTimeDateFunctions() |
ResultSet |
getTypeInfo() |
ResultSet |
getUDTs(@Nullable String catalog,
@Nullable String schemaPattern,
@Nullable String typeNamePattern,
int[] types) |
String |
getURL() |
String |
getUserName() |
ResultSet |
getVersionColumns(@Nullable String catalog,
@Nullable String schema,
String table) |
boolean |
insertsAreDetected(int type) |
boolean |
isCatalogAtStart() |
boolean |
isReadOnly() |
boolean |
isWrapperFor(Class<?> iface) |
boolean |
locatorsUpdateCopy() |
boolean |
nullPlusNonNullIsNull() |
boolean |
nullsAreSortedAtEnd() |
boolean |
nullsAreSortedAtStart() |
boolean |
nullsAreSortedHigh() |
boolean |
nullsAreSortedLow() |
boolean |
othersDeletesAreVisible(int i) |
boolean |
othersInsertsAreVisible(int type) |
boolean |
othersUpdatesAreVisible(int type) |
boolean |
ownDeletesAreVisible(int type) |
boolean |
ownInsertsAreVisible(int type) |
boolean |
ownUpdatesAreVisible(int type) |
Map<String,Map<String,List<String[]>>> |
parseACL(@Nullable String aclArray,
String owner)
Take the a String representing an array of ACLs and return a Map mapping the SQL permission
name to a List of usernames who have that permission.
|
boolean |
storesLowerCaseIdentifiers() |
boolean |
storesLowerCaseQuotedIdentifiers() |
boolean |
storesMixedCaseIdentifiers() |
boolean |
storesMixedCaseQuotedIdentifiers() |
boolean |
storesUpperCaseIdentifiers() |
boolean |
storesUpperCaseQuotedIdentifiers() |
boolean |
supportsAlterTableWithAddColumn() |
boolean |
supportsAlterTableWithDropColumn() |
boolean |
supportsANSI92EntryLevelSQL()
Does this driver support the ANSI-92 entry level SQL grammar? All JDBC Compliant drivers must
return true.
|
boolean |
supportsANSI92FullSQL() |
boolean |
supportsANSI92IntermediateSQL() |
boolean |
supportsBatchUpdates() |
boolean |
supportsCatalogsInDataManipulation() |
boolean |
supportsCatalogsInIndexDefinitions() |
boolean |
supportsCatalogsInPrivilegeDefinitions() |
boolean |
supportsCatalogsInProcedureCalls() |
boolean |
supportsCatalogsInTableDefinitions() |
boolean |
supportsColumnAliasing() |
boolean |
supportsConvert() |
boolean |
supportsConvert(int fromType,
int toType) |
boolean |
supportsCoreSQLGrammar()
Does this driver support the Core ODBC SQL grammar.
|
boolean |
supportsCorrelatedSubqueries() |
boolean |
supportsDataDefinitionAndDataManipulationTransactions() |
boolean |
supportsDataManipulationTransactionsOnly() |
boolean |
supportsDifferentTableCorrelationNames() |
boolean |
supportsExpressionsInOrderBy() |
boolean |
supportsExtendedSQLGrammar()
Does this driver support the Extended (Level 2) ODBC SQL grammar.
|
boolean |
supportsFullOuterJoins() |
boolean |
supportsGetGeneratedKeys() |
boolean |
supportsGroupBy() |
boolean |
supportsGroupByBeyondSelect() |
boolean |
supportsGroupByUnrelated() |
boolean |
supportsIntegrityEnhancementFacility() |
boolean |
supportsLikeEscapeClause() |
boolean |
supportsLimitedOuterJoins() |
boolean |
supportsMinimumSQLGrammar() |
boolean |
supportsMixedCaseIdentifiers()
Does the database treat mixed case unquoted SQL identifiers as case sensitive and as a result
store them in mixed case? A JDBC-Compliant driver will always return false.
|
boolean |
supportsMixedCaseQuotedIdentifiers()
Does the database treat mixed case quoted SQL identifiers as case sensitive and as a result
store them in mixed case? A JDBC compliant driver will always return true.
|
boolean |
supportsMultipleOpenResults() |
boolean |
supportsMultipleResultSets() |
boolean |
supportsMultipleTransactions() |
boolean |
supportsNamedParameters() |
boolean |
supportsNonNullableColumns() |
boolean |
supportsOpenCursorsAcrossCommit()
In PostgreSQL, Cursors are only open within transactions.
|
boolean |
supportsOpenCursorsAcrossRollback() |
boolean |
supportsOpenStatementsAcrossCommit() |
boolean |
supportsOpenStatementsAcrossRollback() |
boolean |
supportsOrderByUnrelated() |
boolean |
supportsOuterJoins() |
boolean |
supportsPositionedDelete()
We support cursors for gets only it seems.
|
boolean |
supportsPositionedUpdate() |
boolean |
supportsRefCursors() |
boolean |
supportsResultSetConcurrency(int type,
int concurrency) |
boolean |
supportsResultSetHoldability(int holdability) |
boolean |
supportsResultSetType(int type) |
boolean |
supportsSavepoints() |
boolean |
supportsSchemasInDataManipulation() |
boolean |
supportsSchemasInIndexDefinitions() |
boolean |
supportsSchemasInPrivilegeDefinitions() |
boolean |
supportsSchemasInProcedureCalls() |
boolean |
supportsSchemasInTableDefinitions() |
boolean |
supportsSelectForUpdate() |
boolean |
supportsStatementPooling() |
boolean |
supportsStoredFunctionsUsingCallSyntax() |
boolean |
supportsStoredProcedures() |
boolean |
supportsSubqueriesInComparisons() |
boolean |
supportsSubqueriesInExists() |
boolean |
supportsSubqueriesInIns() |
boolean |
supportsSubqueriesInQuantifieds() |
boolean |
supportsTableCorrelationNames() |
boolean |
supportsTransactionIsolationLevel(int level) |
boolean |
supportsTransactions() |
boolean |
supportsUnion() |
boolean |
supportsUnionAll() |
<T> T |
unwrap(Class<T> iface) |
boolean |
updatesAreDetected(int type) |
boolean |
usesLocalFilePerTable()
Does the database use a file for each table? Well, not really, since it doesn't use local files.
|
boolean |
usesLocalFiles()
Does the database store tables in a local file? No - it stores them in a file on the server.
|
protected final PgConnection connection
public PgDatabaseMetaData(PgConnection conn)
protected int getMaxIndexKeys()
throws SQLException
SQLExceptionprotected int getMaxNameLength()
throws SQLException
SQLExceptionpublic boolean allProceduresAreCallable()
throws SQLException
allProceduresAreCallable in interface DatabaseMetaDataSQLExceptionpublic boolean allTablesAreSelectable()
throws SQLException
allTablesAreSelectable in interface DatabaseMetaDataSQLExceptionpublic String getURL() throws SQLException
getURL in interface DatabaseMetaDataSQLExceptionpublic String getUserName() throws SQLException
getUserName in interface DatabaseMetaDataSQLExceptionpublic boolean isReadOnly()
throws SQLException
isReadOnly in interface DatabaseMetaDataSQLExceptionpublic boolean nullsAreSortedHigh()
throws SQLException
nullsAreSortedHigh in interface DatabaseMetaDataSQLExceptionpublic boolean nullsAreSortedLow()
throws SQLException
nullsAreSortedLow in interface DatabaseMetaDataSQLExceptionpublic boolean nullsAreSortedAtStart()
throws SQLException
nullsAreSortedAtStart in interface DatabaseMetaDataSQLExceptionpublic boolean nullsAreSortedAtEnd()
throws SQLException
nullsAreSortedAtEnd in interface DatabaseMetaDataSQLExceptionpublic String getDatabaseProductName() throws SQLException
getDatabaseProductName in interface DatabaseMetaDataSQLExceptionpublic String getDatabaseProductVersion() throws SQLException
getDatabaseProductVersion in interface DatabaseMetaDataSQLExceptionpublic String getDriverName()
getDriverName in interface DatabaseMetaDatapublic String getDriverVersion()
getDriverVersion in interface DatabaseMetaDatapublic int getDriverMajorVersion()
getDriverMajorVersion in interface DatabaseMetaDatapublic int getDriverMinorVersion()
getDriverMinorVersion in interface DatabaseMetaDatapublic boolean usesLocalFiles()
throws SQLException
usesLocalFiles in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean usesLocalFilePerTable()
throws SQLException
usesLocalFilePerTable in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean supportsMixedCaseIdentifiers()
throws SQLException
supportsMixedCaseIdentifiers in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean storesUpperCaseIdentifiers()
throws SQLException
storesUpperCaseIdentifiers in interface DatabaseMetaDataSQLExceptionpublic boolean storesLowerCaseIdentifiers()
throws SQLException
storesLowerCaseIdentifiers in interface DatabaseMetaDataSQLExceptionpublic boolean storesMixedCaseIdentifiers()
throws SQLException
storesMixedCaseIdentifiers in interface DatabaseMetaDataSQLExceptionpublic boolean supportsMixedCaseQuotedIdentifiers()
throws SQLException
supportsMixedCaseQuotedIdentifiers in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean storesUpperCaseQuotedIdentifiers()
throws SQLException
storesUpperCaseQuotedIdentifiers in interface DatabaseMetaDataSQLExceptionpublic boolean storesLowerCaseQuotedIdentifiers()
throws SQLException
storesLowerCaseQuotedIdentifiers in interface DatabaseMetaDataSQLExceptionpublic boolean storesMixedCaseQuotedIdentifiers()
throws SQLException
storesMixedCaseQuotedIdentifiers in interface DatabaseMetaDataSQLExceptionpublic String getIdentifierQuoteString() throws SQLException
getIdentifierQuoteString in interface DatabaseMetaDataSQLException - if a database access error occurspublic String getSQLKeywords() throws SQLException
From PostgreSQL 9.0+ return the keywords from pg_catalog.pg_get_keywords()
getSQLKeywords in interface DatabaseMetaDataSQLException - if a database access error occurspublic String getNumericFunctions() throws SQLException
getNumericFunctions in interface DatabaseMetaDataSQLExceptionpublic String getStringFunctions() throws SQLException
getStringFunctions in interface DatabaseMetaDataSQLExceptionpublic String getSystemFunctions() throws SQLException
getSystemFunctions in interface DatabaseMetaDataSQLExceptionpublic String getTimeDateFunctions() throws SQLException
getTimeDateFunctions in interface DatabaseMetaDataSQLExceptionpublic String getSearchStringEscape() throws SQLException
getSearchStringEscape in interface DatabaseMetaDataSQLExceptionpublic String getExtraNameCharacters() throws SQLException
Postgresql allows any high-bit character to be used in an unquoted identifier, so we can't possibly list them all.
From the file src/backend/parser/scan.l, an identifier is ident_start [A-Za-z\200-\377_] ident_cont [A-Za-z\200-\377_0-9\$] identifier {ident_start}{ident_cont}*
getExtraNameCharacters in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean supportsAlterTableWithAddColumn()
throws SQLException
supportsAlterTableWithAddColumn in interface DatabaseMetaDataSQLExceptionpublic boolean supportsAlterTableWithDropColumn()
throws SQLException
supportsAlterTableWithDropColumn in interface DatabaseMetaDataSQLExceptionpublic boolean supportsColumnAliasing()
throws SQLException
supportsColumnAliasing in interface DatabaseMetaDataSQLExceptionpublic boolean nullPlusNonNullIsNull()
throws SQLException
nullPlusNonNullIsNull in interface DatabaseMetaDataSQLExceptionpublic boolean supportsConvert()
throws SQLException
supportsConvert in interface DatabaseMetaDataSQLExceptionpublic boolean supportsConvert(int fromType,
int toType)
throws SQLException
supportsConvert in interface DatabaseMetaDataSQLExceptionpublic boolean supportsTableCorrelationNames()
throws SQLException
supportsTableCorrelationNames in interface DatabaseMetaDataSQLExceptionpublic boolean supportsDifferentTableCorrelationNames()
throws SQLException
supportsDifferentTableCorrelationNames in interface DatabaseMetaDataSQLExceptionpublic boolean supportsExpressionsInOrderBy()
throws SQLException
supportsExpressionsInOrderBy in interface DatabaseMetaDataSQLExceptionpublic boolean supportsOrderByUnrelated()
throws SQLException
supportsOrderByUnrelated in interface DatabaseMetaDataSQLExceptionpublic boolean supportsGroupBy()
throws SQLException
supportsGroupBy in interface DatabaseMetaDataSQLExceptionpublic boolean supportsGroupByUnrelated()
throws SQLException
supportsGroupByUnrelated in interface DatabaseMetaDataSQLExceptionpublic boolean supportsGroupByBeyondSelect()
throws SQLException
supportsGroupByBeyondSelect in interface DatabaseMetaDataSQLExceptionpublic boolean supportsLikeEscapeClause()
throws SQLException
supportsLikeEscapeClause in interface DatabaseMetaDataSQLExceptionpublic boolean supportsMultipleResultSets()
throws SQLException
supportsMultipleResultSets in interface DatabaseMetaDataSQLExceptionpublic boolean supportsMultipleTransactions()
throws SQLException
supportsMultipleTransactions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsNonNullableColumns()
throws SQLException
supportsNonNullableColumns in interface DatabaseMetaDataSQLExceptionpublic boolean supportsMinimumSQLGrammar()
throws SQLException
This grammar is defined at: http://www.microsoft.com/msdn/sdk/platforms/doc/odbc/src/intropr.htm
In Appendix C. From this description, we seem to support the ODBC minimal (Level 0) grammar.
supportsMinimumSQLGrammar in interface DatabaseMetaDataSQLExceptionpublic boolean supportsCoreSQLGrammar()
throws SQLException
supportsCoreSQLGrammar in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean supportsExtendedSQLGrammar()
throws SQLException
supportsExtendedSQLGrammar in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean supportsANSI92EntryLevelSQL()
throws SQLException
supportsANSI92EntryLevelSQL in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean supportsANSI92IntermediateSQL()
throws SQLException
supportsANSI92IntermediateSQL in interface DatabaseMetaDataSQLExceptionpublic boolean supportsANSI92FullSQL()
throws SQLException
supportsANSI92FullSQL in interface DatabaseMetaDataSQLExceptionpublic boolean supportsIntegrityEnhancementFacility()
throws SQLException
supportsIntegrityEnhancementFacility in interface DatabaseMetaDataSQLExceptionpublic boolean supportsOuterJoins()
throws SQLException
supportsOuterJoins in interface DatabaseMetaDataSQLExceptionpublic boolean supportsFullOuterJoins()
throws SQLException
supportsFullOuterJoins in interface DatabaseMetaDataSQLExceptionpublic boolean supportsLimitedOuterJoins()
throws SQLException
supportsLimitedOuterJoins in interface DatabaseMetaDataSQLExceptionpublic String getSchemaTerm() throws SQLException
PostgreSQL doesn't have schemas, but when it does, we'll use the term "schema".
getSchemaTerm in interface DatabaseMetaData"schema"SQLExceptionpublic String getProcedureTerm() throws SQLException
getProcedureTerm in interface DatabaseMetaData"function"SQLExceptionpublic String getCatalogTerm() throws SQLException
getCatalogTerm in interface DatabaseMetaData"database"SQLExceptionpublic boolean isCatalogAtStart()
throws SQLException
isCatalogAtStart in interface DatabaseMetaDataSQLExceptionpublic String getCatalogSeparator() throws SQLException
getCatalogSeparator in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSchemasInDataManipulation()
throws SQLException
supportsSchemasInDataManipulation in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSchemasInProcedureCalls()
throws SQLException
supportsSchemasInProcedureCalls in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSchemasInTableDefinitions()
throws SQLException
supportsSchemasInTableDefinitions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSchemasInIndexDefinitions()
throws SQLException
supportsSchemasInIndexDefinitions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSchemasInPrivilegeDefinitions()
throws SQLException
supportsSchemasInPrivilegeDefinitions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsCatalogsInDataManipulation()
throws SQLException
supportsCatalogsInDataManipulation in interface DatabaseMetaDataSQLExceptionpublic boolean supportsCatalogsInProcedureCalls()
throws SQLException
supportsCatalogsInProcedureCalls in interface DatabaseMetaDataSQLExceptionpublic boolean supportsCatalogsInTableDefinitions()
throws SQLException
supportsCatalogsInTableDefinitions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsCatalogsInIndexDefinitions()
throws SQLException
supportsCatalogsInIndexDefinitions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsCatalogsInPrivilegeDefinitions()
throws SQLException
supportsCatalogsInPrivilegeDefinitions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsPositionedDelete()
throws SQLException
supportsPositionedDelete in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean supportsPositionedUpdate()
throws SQLException
supportsPositionedUpdate in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSelectForUpdate()
throws SQLException
supportsSelectForUpdate in interface DatabaseMetaDataSQLExceptionpublic boolean supportsStoredProcedures()
throws SQLException
supportsStoredProcedures in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSubqueriesInComparisons()
throws SQLException
supportsSubqueriesInComparisons in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSubqueriesInExists()
throws SQLException
supportsSubqueriesInExists in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSubqueriesInIns()
throws SQLException
supportsSubqueriesInIns in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSubqueriesInQuantifieds()
throws SQLException
supportsSubqueriesInQuantifieds in interface DatabaseMetaDataSQLExceptionpublic boolean supportsCorrelatedSubqueries()
throws SQLException
supportsCorrelatedSubqueries in interface DatabaseMetaDataSQLExceptionpublic boolean supportsUnion()
throws SQLException
supportsUnion in interface DatabaseMetaDataSQLExceptionpublic boolean supportsUnionAll()
throws SQLException
supportsUnionAll in interface DatabaseMetaDataSQLExceptionpublic boolean supportsOpenCursorsAcrossCommit()
throws SQLException
supportsOpenCursorsAcrossCommit in interface DatabaseMetaDataSQLExceptionpublic boolean supportsOpenCursorsAcrossRollback()
throws SQLException
supportsOpenCursorsAcrossRollback in interface DatabaseMetaDataSQLExceptionpublic boolean supportsOpenStatementsAcrossCommit()
throws SQLException
Can statements remain open across commits? They may, but this driver cannot guarantee that. In further reflection. we are talking a Statement object here, so the answer is yes, since the Statement is only a vehicle to ExecSQL()
supportsOpenStatementsAcrossCommit in interface DatabaseMetaDataSQLExceptionpublic boolean supportsOpenStatementsAcrossRollback()
throws SQLException
Can statements remain open across rollbacks? They may, but this driver cannot guarantee that. In further contemplation, we are talking a Statement object here, so the answer is yes, since the Statement is only a vehicle to ExecSQL() in Connection
supportsOpenStatementsAcrossRollback in interface DatabaseMetaDataSQLExceptionpublic int getMaxCharLiteralLength()
throws SQLException
getMaxCharLiteralLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxBinaryLiteralLength()
throws SQLException
getMaxBinaryLiteralLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxColumnNameLength()
throws SQLException
getMaxColumnNameLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxColumnsInGroupBy()
throws SQLException
getMaxColumnsInGroupBy in interface DatabaseMetaDataSQLExceptionpublic int getMaxColumnsInIndex()
throws SQLException
getMaxColumnsInIndex in interface DatabaseMetaDataSQLExceptionpublic int getMaxColumnsInOrderBy()
throws SQLException
getMaxColumnsInOrderBy in interface DatabaseMetaDataSQLExceptionpublic int getMaxColumnsInSelect()
throws SQLException
getMaxColumnsInSelect in interface DatabaseMetaDataSQLExceptionpublic int getMaxColumnsInTable()
throws SQLException
"The new class is created as a heap with no initial data. A class can have no more than 1600 attributes (realistically, this is limited by the fact that tuple sizes must be less than 8192 bytes)..."
getMaxColumnsInTable in interface DatabaseMetaDataSQLException - if a database access error occurspublic int getMaxConnections()
throws SQLException
getMaxConnections in interface DatabaseMetaDataSQLException - if a database access error occurspublic int getMaxCursorNameLength()
throws SQLException
getMaxCursorNameLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxIndexLength()
throws SQLException
getMaxIndexLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxSchemaNameLength()
throws SQLException
getMaxSchemaNameLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxProcedureNameLength()
throws SQLException
getMaxProcedureNameLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxCatalogNameLength()
throws SQLException
getMaxCatalogNameLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxRowSize()
throws SQLException
getMaxRowSize in interface DatabaseMetaDataSQLExceptionpublic boolean doesMaxRowSizeIncludeBlobs()
throws SQLException
doesMaxRowSizeIncludeBlobs in interface DatabaseMetaDataSQLExceptionpublic int getMaxStatementLength()
throws SQLException
getMaxStatementLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxStatements()
throws SQLException
getMaxStatements in interface DatabaseMetaDataSQLExceptionpublic int getMaxTableNameLength()
throws SQLException
getMaxTableNameLength in interface DatabaseMetaDataSQLExceptionpublic int getMaxTablesInSelect()
throws SQLException
getMaxTablesInSelect in interface DatabaseMetaDataSQLExceptionpublic int getMaxUserNameLength()
throws SQLException
getMaxUserNameLength in interface DatabaseMetaDataSQLExceptionpublic int getDefaultTransactionIsolation()
throws SQLException
getDefaultTransactionIsolation in interface DatabaseMetaDataSQLExceptionpublic boolean supportsTransactions()
throws SQLException
supportsTransactions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsTransactionIsolationLevel(int level)
throws SQLException
We only support TRANSACTION_SERIALIZABLE and TRANSACTION_READ_COMMITTED before 8.0; from 8.0 READ_UNCOMMITTED and REPEATABLE_READ are accepted aliases for READ_COMMITTED.
supportsTransactionIsolationLevel in interface DatabaseMetaDataSQLExceptionpublic boolean supportsDataDefinitionAndDataManipulationTransactions()
throws SQLException
supportsDataDefinitionAndDataManipulationTransactions in interface DatabaseMetaDataSQLExceptionpublic boolean supportsDataManipulationTransactionsOnly()
throws SQLException
supportsDataManipulationTransactionsOnly in interface DatabaseMetaDataSQLExceptionpublic boolean dataDefinitionCausesTransactionCommit()
throws SQLException
Does a data definition statement within a transaction force the transaction to commit? It seems to mean something like:
CREATE TABLE T (A INT); INSERT INTO T (A) VALUES (2); BEGIN; UPDATE T SET A = A + 1; CREATE TABLE X (A INT); SELECT A FROM T INTO X; COMMIT;
Does the CREATE TABLE call cause a commit? The answer is no.
dataDefinitionCausesTransactionCommit in interface DatabaseMetaDataSQLException - if a database access error occurspublic boolean dataDefinitionIgnoredInTransactions()
throws SQLException
dataDefinitionIgnoredInTransactions in interface DatabaseMetaDataSQLExceptionprotected String escapeQuotes(String s) throws SQLException
s - input valueSQLException - if something wrong happenspublic ResultSet getProcedures(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String procedureNamePattern) throws SQLException
getProcedures in interface DatabaseMetaDataSQLExceptionpublic ResultSet getProcedureColumns(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String procedureNamePattern, @Nullable String columnNamePattern) throws SQLException
getProcedureColumns in interface DatabaseMetaDataSQLExceptionpublic ResultSet getTables(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String tableNamePattern, String[] types) throws SQLException
getTables in interface DatabaseMetaDataSQLExceptionpublic ResultSet getSchemas() throws SQLException
getSchemas in interface DatabaseMetaDataSQLExceptionpublic ResultSet getSchemas(@Nullable String catalog, @Nullable String schemaPattern) throws SQLException
getSchemas in interface DatabaseMetaDataSQLExceptionpublic ResultSet getCatalogs() throws SQLException
getCatalogs in interface DatabaseMetaDataSQLExceptionpublic ResultSet getTableTypes() throws SQLException
getTableTypes in interface DatabaseMetaDataSQLExceptionpublic ResultSet getColumns(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String tableNamePattern, @Nullable String columnNamePattern) throws SQLException
getColumns in interface DatabaseMetaDataSQLExceptionpublic ResultSet getColumnPrivileges(@Nullable String catalog, @Nullable String schema, String table, @Nullable String columnNamePattern) throws SQLException
getColumnPrivileges in interface DatabaseMetaDataSQLExceptionpublic ResultSet getTablePrivileges(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String tableNamePattern) throws SQLException
getTablePrivileges in interface DatabaseMetaDataSQLExceptionpublic Map<String,Map<String,List<String[]>>> parseACL(@Nullable String aclArray, String owner)
SELECT -> user1 -> list of [grantor, grantable]aclArray - ACL arrayowner - ownerpublic ResultSet getBestRowIdentifier(@Nullable String catalog, @Nullable String schema, String table, int scope, boolean nullable) throws SQLException
getBestRowIdentifier in interface DatabaseMetaDataSQLExceptionpublic ResultSet getVersionColumns(@Nullable String catalog, @Nullable String schema, String table) throws SQLException
getVersionColumns in interface DatabaseMetaDataSQLExceptionpublic ResultSet getPrimaryKeys(@Nullable String catalog, @Nullable String schema, String table) throws SQLException
getPrimaryKeys in interface DatabaseMetaDataSQLExceptionprotected ResultSet getPrimaryUniqueKeys(@Nullable String catalog, @Nullable String schema, String table) throws SQLException
SQLExceptionprotected ResultSet getImportedExportedKeys(@Nullable String primaryCatalog, @Nullable String primarySchema, @Nullable String primaryTable, @Nullable String foreignCatalog, @Nullable String foreignSchema, @Nullable String foreignTable) throws SQLException
primaryCatalog - primary catalogprimarySchema - primary schemaprimaryTable - if provided will get the keys exported by this tableforeignCatalog - foreign catalogforeignSchema - foreign schemaforeignTable - if provided will get the keys imported by this tableSQLException - if something wrong happenspublic ResultSet getImportedKeys(@Nullable String catalog, @Nullable String schema, String table) throws SQLException
getImportedKeys in interface DatabaseMetaDataSQLExceptionpublic ResultSet getExportedKeys(@Nullable String catalog, @Nullable String schema, String table) throws SQLException
getExportedKeys in interface DatabaseMetaDataSQLExceptionpublic ResultSet getCrossReference(@Nullable String primaryCatalog, @Nullable String primarySchema, String primaryTable, @Nullable String foreignCatalog, @Nullable String foreignSchema, String foreignTable) throws SQLException
getCrossReference in interface DatabaseMetaDataSQLExceptionpublic ResultSet getTypeInfo() throws SQLException
getTypeInfo in interface DatabaseMetaDataSQLExceptionpublic ResultSet getIndexInfo(@Nullable String catalog, @Nullable String schema, String tableName, boolean unique, boolean approximate) throws SQLException
getIndexInfo in interface DatabaseMetaDataSQLExceptionpublic boolean supportsResultSetType(int type)
throws SQLException
supportsResultSetType in interface DatabaseMetaDataSQLExceptionpublic boolean supportsResultSetConcurrency(int type,
int concurrency)
throws SQLException
supportsResultSetConcurrency in interface DatabaseMetaDataSQLExceptionpublic boolean ownUpdatesAreVisible(int type)
throws SQLException
ownUpdatesAreVisible in interface DatabaseMetaDataSQLExceptionpublic boolean ownDeletesAreVisible(int type)
throws SQLException
ownDeletesAreVisible in interface DatabaseMetaDataSQLExceptionpublic boolean ownInsertsAreVisible(int type)
throws SQLException
ownInsertsAreVisible in interface DatabaseMetaDataSQLExceptionpublic boolean othersUpdatesAreVisible(int type)
throws SQLException
othersUpdatesAreVisible in interface DatabaseMetaDataSQLExceptionpublic boolean othersDeletesAreVisible(int i)
throws SQLException
othersDeletesAreVisible in interface DatabaseMetaDataSQLExceptionpublic boolean othersInsertsAreVisible(int type)
throws SQLException
othersInsertsAreVisible in interface DatabaseMetaDataSQLExceptionpublic boolean updatesAreDetected(int type)
throws SQLException
updatesAreDetected in interface DatabaseMetaDataSQLExceptionpublic boolean deletesAreDetected(int i)
throws SQLException
deletesAreDetected in interface DatabaseMetaDataSQLExceptionpublic boolean insertsAreDetected(int type)
throws SQLException
insertsAreDetected in interface DatabaseMetaDataSQLExceptionpublic boolean supportsBatchUpdates()
throws SQLException
supportsBatchUpdates in interface DatabaseMetaDataSQLExceptionpublic ResultSet getUDTs(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String typeNamePattern, int[] types) throws SQLException
getUDTs in interface DatabaseMetaDataSQLExceptionpublic Connection getConnection() throws SQLException
getConnection in interface DatabaseMetaDataSQLExceptionprotected Statement createMetaDataStatement() throws SQLException
SQLExceptionpublic long getMaxLogicalLobSize()
throws SQLException
getMaxLogicalLobSize in interface DatabaseMetaDataSQLExceptionpublic boolean supportsRefCursors()
throws SQLException
supportsRefCursors in interface DatabaseMetaDataSQLExceptionpublic RowIdLifetime getRowIdLifetime() throws SQLException
getRowIdLifetime in interface DatabaseMetaDataSQLExceptionpublic boolean supportsStoredFunctionsUsingCallSyntax()
throws SQLException
supportsStoredFunctionsUsingCallSyntax in interface DatabaseMetaDataSQLExceptionpublic boolean autoCommitFailureClosesAllResultSets()
throws SQLException
autoCommitFailureClosesAllResultSets in interface DatabaseMetaDataSQLExceptionpublic ResultSet getClientInfoProperties() throws SQLException
getClientInfoProperties in interface DatabaseMetaDataSQLExceptionpublic boolean isWrapperFor(Class<?> iface) throws SQLException
isWrapperFor in interface WrapperSQLExceptionpublic <T> T unwrap(Class<T> iface) throws SQLException
unwrap in interface WrapperSQLExceptionpublic ResultSet getFunctions(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String functionNamePattern) throws SQLException
getFunctions in interface DatabaseMetaDataSQLExceptionpublic ResultSet getFunctionColumns(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String functionNamePattern, @Nullable String columnNamePattern) throws SQLException
getFunctionColumns in interface DatabaseMetaDataSQLExceptionpublic ResultSet getPseudoColumns(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String tableNamePattern, @Nullable String columnNamePattern) throws SQLException
getPseudoColumns in interface DatabaseMetaDataSQLExceptionpublic boolean generatedKeyAlwaysReturned()
throws SQLException
generatedKeyAlwaysReturned in interface DatabaseMetaDataSQLExceptionpublic boolean supportsSavepoints()
throws SQLException
supportsSavepoints in interface DatabaseMetaDataSQLExceptionpublic boolean supportsNamedParameters()
throws SQLException
supportsNamedParameters in interface DatabaseMetaDataSQLExceptionpublic boolean supportsMultipleOpenResults()
throws SQLException
supportsMultipleOpenResults in interface DatabaseMetaDataSQLExceptionpublic boolean supportsGetGeneratedKeys()
throws SQLException
supportsGetGeneratedKeys in interface DatabaseMetaDataSQLExceptionpublic ResultSet getSuperTypes(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String typeNamePattern) throws SQLException
getSuperTypes in interface DatabaseMetaDataSQLExceptionpublic ResultSet getSuperTables(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String tableNamePattern) throws SQLException
getSuperTables in interface DatabaseMetaDataSQLExceptionpublic ResultSet getAttributes(@Nullable String catalog, @Nullable String schemaPattern, @Nullable String typeNamePattern, @Nullable String attributeNamePattern) throws SQLException
getAttributes in interface DatabaseMetaDataSQLExceptionpublic boolean supportsResultSetHoldability(int holdability)
throws SQLException
supportsResultSetHoldability in interface DatabaseMetaDataSQLExceptionpublic int getResultSetHoldability()
throws SQLException
getResultSetHoldability in interface DatabaseMetaDataSQLExceptionpublic int getDatabaseMajorVersion()
throws SQLException
getDatabaseMajorVersion in interface DatabaseMetaDataSQLExceptionpublic int getDatabaseMinorVersion()
throws SQLException
getDatabaseMinorVersion in interface DatabaseMetaDataSQLExceptionpublic int getJDBCMajorVersion()
getJDBCMajorVersion in interface DatabaseMetaDatapublic int getJDBCMinorVersion()
getJDBCMinorVersion in interface DatabaseMetaDatapublic int getSQLStateType()
throws SQLException
getSQLStateType in interface DatabaseMetaDataSQLExceptionpublic boolean locatorsUpdateCopy()
throws SQLException
locatorsUpdateCopy in interface DatabaseMetaDataSQLExceptionpublic boolean supportsStatementPooling()
throws SQLException
supportsStatementPooling in interface DatabaseMetaDataSQLExceptionCopyright © 1997-2020 PostgreSQL Global Development Group. All Rights Reserved.