-
- All Superinterfaces:
-
Wrapper
public interface DatabaseMetaData extends Wrapper
有关整个数据库的综合信息。此接口由驱动程序供应商实现,以便用户了解数据库管理系统(DBMS)的功能以及基于与其一起使用的JDBC技术(“JDBC驱动程序”)的驱动程序。 不同的关系DBMS通常支持不同的功能,以不同的方式实现功能,并使用不同的数据类型。 此外,驱动程序可以在DBMS提供的功能之上实现功能。 此接口中的方法返回的信息适用于特定驱动程序和特定DBMS协同工作的功能。 请注意,如本文档中所使用的,术语“数据库”通常用于指代驱动程序和DBMS。
此接口的用户通常是需要发现如何处理底层DBMS的工具。 对于打算与多个DBMS一起使用的应用程序尤其如此。 例如,工具可能使用方法
getTypeInfo
来查找可在CREATE TABLE
语句中使用的数据类型。 或者,用户可以调用方法supportsCorrelatedSubqueries
以查看是否可以使用相关子查询或supportsBatchUpdates
来查看是否可以使用批量更新。一些
DatabaseMetaData
方法以ResultSet
对象的形式返回信息列表。 常规ResultSet
方法(例如getString
和getInt
)可用于从这些ResultSet
对象检索数据。 如果给定形式的元数据不可用,则返回空的ResultSet
。 对于给定方法定义为由ResultSet
对象返回的列之外的其他列可以由JDBC驱动程序供应商定义,并且必须通过其列标签访问。一些
DatabaseMetaData
方法接受String模式的参数。 这些参数都有诸如fooPattern之类的名称。 在模式字符串中,“%”表示匹配0个或更多字符的任何子字符串,“_”表示匹配任何一个字符。 仅返回与搜索模式匹配的元数据条目。 如果搜索模式参数设置为null
,则将从搜索中删除该参数的条件。- 从以下版本开始:
- 1.1
-
-
字段汇总
字段 变量和类型 字段 描述 static short
attributeNoNulls
表示可能不允许NULL
值。static short
attributeNullable
表示绝对允许NULL
值。static short
attributeNullableUnknown
指示是否允许NULL
值是否已知。static int
bestRowNotPseudo
指示最佳行标识符不是伪列。static int
bestRowPseudo
表示最佳行标识符是伪列。static int
bestRowSession
指示最佳行标识符的范围是当前会话的剩余部分。static int
bestRowTemporary
指示最佳行标识符的范围是非常临时的,仅在使用行时持久。static int
bestRowTransaction
指示最佳行标识符的范围是当前事务的剩余部分。static int
bestRowUnknown
表示最佳行标识符可能是也可能不是伪列。static int
columnNoNulls
表示该列可能不允许NULL
值。static int
columnNullable
表示该列肯定允许NULL
值。static int
columnNullableUnknown
表示列的可为空性未知。static int
functionColumnIn
表示参数或列是IN参数。static int
functionColumnInOut
表示参数或列是INOUT参数。static int
functionColumnOut
表示参数或列是OUT参数。static int
functionColumnResult
指示参数或列是结果集中的列。static int
functionColumnUnknown
表示参数或列的类型未知。static int
functionNoNulls
表示不允许NULL
值。static int
functionNoTable
表示该函数未返回表。static int
functionNullable
表示允许NULL
值。static int
functionNullableUnknown
指示是否允许NULL
值是未知的。static int
functionResultUnknown
表示不知道函数是返回结果还是表。static int
functionReturn
表示参数或列是返回值。static int
functionReturnsTable
表示该函数返回一个表。static int
importedKeyCascade
对于列UPDATE_RULE
,指示当更新主键时,外键(导入的键)被更改为与其一致。static int
importedKeyInitiallyDeferred
表示可推迟性。static int
importedKeyInitiallyImmediate
表示可推迟性。static int
importedKeyNoAction
对于列UPDATE_RULE
和DELETE_RULE
,表示如果已导入主键,则无法更新或删除主键。static int
importedKeyNotDeferrable
表示可推迟性。static int
importedKeyRestrict
对于列UPDATE_RULE
,指示如果主键已由另一个表作为外键导入,则可能不会更新主键。static int
importedKeySetDefault
对于列UPDATE_RULE
和DELETE_RULE
,指示如果更新或删除主键,则将外键(导入的键)设置为默认值。static int
importedKeySetNull
对于列UPDATE_RULE
和DELETE_RULE
,指示更新或删除主键时,外键(导入的键)更改为NULL
。static int
procedureColumnIn
表示该列存储IN参数。static int
procedureColumnInOut
表示该列存储INOUT参数。static int
procedureColumnOut
表示该列存储OUT参数。static int
procedureColumnResult
表示该列存储结果。static int
procedureColumnReturn
表示该列存储返回值。static int
procedureColumnUnknown
表示列的类型未知。static int
procedureNoNulls
表示不允许NULL
值。static int
procedureNoResult
表示该过程未返回结果。static int
procedureNullable
表示允许NULL
值。static int
procedureNullableUnknown
指示是否允许NULL
值是未知的。static int
procedureResultUnknown
表示不知道该过程是否返回结果。static int
procedureReturnsResult
表示该过程返回结果。static int
sqlStateSQL
该方法一个可能的返回值DatabaseMetaData.getSQLStateType
,其用于指示该方法返回的值是否SQLException.getSQLState
是SQLSTATE值。static int
sqlStateSQL99
该方法一个可能的返回值DatabaseMetaData.getSQLStateType
,其用于指示该方法返回的值是否SQLException.getSQLState
是一个SQL99 SQLSTATE值。static int
sqlStateXOpen
该方法一个可能的返回值DatabaseMetaData.getSQLStateType
,其用于指示该方法返回的值是否SQLException.getSQLState
是X /打开(现在知道的公开组)SQL CLI SQLSTATE值。static short
tableIndexClustered
表示此表索引是聚簇索引。static short
tableIndexHashed
表示此表索引是散列索引。static short
tableIndexOther
表示此表索引不是聚簇索引,散列索引或表统计信息; 它不是这些。static short
tableIndexStatistic
指示此列包含与表的索引描述一起返回的表统计信息。static int
typeNoNulls
表示此数据类型不允许使用NULL
值。static int
typeNullable
表示此数据类型允许使用NULL
值。static int
typeNullableUnknown
表示不知道此数据类型是否允许NULL
值。static int
typePredBasic
表示数据类型只能用于不使用LIKE
谓词的WHERE
搜索子句。static int
typePredChar
表示数据类型只能用于使用LIKE
谓词的WHERE
搜索子句中。static int
typePredNone
表示此类型不支持WHERE
搜索子句。static int
typeSearchable
表示所有WHERE
搜索子句都可以基于此类型。static int
versionColumnNotPseudo
表示此版本列不是伪列。static int
versionColumnPseudo
表示此版本列是伪列。static int
versionColumnUnknown
表示此版本列可能是也可能不是伪列。
-
方法摘要
所有方法 实例方法 抽象方法 Default Methods 变量和类型 方法 描述 boolean
allProceduresAreCallable()
检索当前用户是否可以调用方法getProcedures
返回的所有过程。boolean
allTablesAreSelectable()
检索当前用户是否可以在SELECT
语句中使用方法getTables
返回的所有表。boolean
autoCommitFailureClosesAllResultSets()
检索是否SQLException
当autoCommit为true
指示所有打开的ResultSets已关闭,即使那些可保持。boolean
dataDefinitionCausesTransactionCommit()
检索事务中的数据定义语句是否强制事务提交。boolean
dataDefinitionIgnoredInTransactions()
检索此数据库是否忽略事务中的数据定义语句。boolean
deletesAreDetected(int type)
通过调用方法ResultSet.rowDeleted
检索是否可以检测到可见行删除。boolean
doesMaxRowSizeIncludeBlobs()
检索方法getMaxRowSize
的返回值是否包括SQL数据类型LONGVARCHAR
和LONGVARBINARY
。boolean
generatedKeyAlwaysReturned()
如果为自动生成的键列指定的列名称或索引有效且语句成功,则检索是否始终返回生成的键。ResultSet
getAttributes(String catalog, String schemaPattern, String typeNamePattern, String attributeNamePattern)
检索给定模式和目录中可用的用户定义类型(UDT)的给定类型的给定属性的描述。ResultSet
getBestRowIdentifier(String catalog, String schema, String table, int scope, boolean nullable)
检索表的唯一标识行的最佳列集的描述。ResultSet
getCatalogs()
检索此数据库中可用的目录名称。String
getCatalogSeparator()
检索此数据库用作目录和表名之间的分隔符的String
。String
getCatalogTerm()
检索数据库供应商的“目录”首选术语。ResultSet
getClientInfoProperties()
检索驱动程序支持的客户端信息属性的列表。ResultSet
getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern)
检索表列的访问权限的描述。ResultSet
getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)
检索指定目录中可用的表列的描述。Connection
getConnection()
检索生成此元数据对象的连接。ResultSet
getCrossReference(String parentCatalog, String parentSchema, String parentTable, String foreignCatalog, String foreignSchema, String foreignTable)
检索给定外键表中引用主键的外键列的描述或表示父表的唯一约束的列(可以是相同或不同的表)。int
getDatabaseMajorVersion()
检索基础数据库的主版本号。int
getDatabaseMinorVersion()
检索基础数据库的次要版本号。String
getDatabaseProductName()
检索此数据库产品的名称。String
getDatabaseProductVersion()
检索此数据库产品的版本号。int
getDefaultTransactionIsolation()
检索此数据库的默认事务隔离级别。int
getDriverMajorVersion()
检索此JDBC驱动程序的主要版本号。int
getDriverMinorVersion()
检索此JDBC驱动程序的次要版本号。String
getDriverName()
检索此JDBC驱动程序的名称。String
getDriverVersion()
以String
检索此JDBC驱动程序的版本号。ResultSet
getExportedKeys(String catalog, String schema, String table)
检索引用给定表的主键列(由表导出的外键)的外键列的描述。String
getExtraNameCharacters()
检索可以在不带引号的标识符名称(超出az,AZ,0-9和_的那些名称)中使用的所有“额外”字符。ResultSet
getFunctionColumns(String catalog, String schemaPattern, String functionNamePattern, String columnNamePattern)
检索给定目录的系统或用户函数参数和返回类型的描述。ResultSet
getFunctions(String catalog, String schemaPattern, String functionNamePattern)
检索给定目录中可用的系统和用户功能的描述。String
getIdentifierQuoteString()
检索用于引用SQL标识符的字符串。ResultSet
getImportedKeys(String catalog, String schema, String table)
检索给定表的外键列(由表导入的主键)引用的主键列的描述。ResultSet
getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate)
检索给定表的索引和统计信息的描述。int
getJDBCMajorVersion()
检索此驱动程序的主要JDBC版本号。int
getJDBCMinorVersion()
检索此驱动程序的次要JDBC版本号。int
getMaxBinaryLiteralLength()
检索此数据库允许在内联二进制文字中使用的最大十六进制字符数。int
getMaxCatalogNameLength()
检索此数据库允许在目录名称中使用的最大字符数。int
getMaxCharLiteralLength()
检索此数据库允许的字符文字的最大字符数。int
getMaxColumnNameLength()
检索此数据库允许列名称的最大字符数。int
getMaxColumnsInGroupBy()
检索此数据库允许在GROUP BY
子句中使用的最大列数。int
getMaxColumnsInIndex()
检索此数据库在索引中允许的最大列数。int
getMaxColumnsInOrderBy()
检索此数据库允许在ORDER BY
子句中使用的最大列数。int
getMaxColumnsInSelect()
检索此数据库允许在SELECT
列表中包含的最大列数。int
getMaxColumnsInTable()
检索此数据库允许在表中使用的最大列数。int
getMaxConnections()
检索可能的此数据库的最大并发连接数。int
getMaxCursorNameLength()
检索此数据库允许在游标名称中使用的最大字符数。int
getMaxIndexLength()
检索此数据库允许索引的最大字节数,包括索引的所有部分。default long
getMaxLogicalLobSize()
检索此数据库允许的最大字节数,以LOB
的逻辑大小。int
getMaxProcedureNameLength()
检索此数据库允许在过程名称中使用的最大字符数。int
getMaxRowSize()
检索此数据库允许在单行中使用的最大字节数。int
getMaxSchemaNameLength()
检索此数据库允许在模式名称中使用的最大字符数。int
getMaxStatementLength()
检索此数据库在SQL语句中允许的最大字符数。int
getMaxStatements()
检索可以同时打开的此数据库的最大活动语句数。int
getMaxTableNameLength()
检索此数据库允许在表名中使用的最大字符数。int
getMaxTablesInSelect()
检索此数据库允许在SELECT
语句中使用的最大表数。int
getMaxUserNameLength()
检索此数据库允许在用户名中使用的最大字符数。String
getNumericFunctions()
检索此数据库可用的以逗号分隔的数学函数列表。ResultSet
getPrimaryKeys(String catalog, String schema, String table)
检索给定表的主键列的描述。ResultSet
getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern)
检索给定目录的存储过程参数和结果列的描述。ResultSet
getProcedures(String catalog, String schemaPattern, String procedureNamePattern)
检索给定目录中可用的存储过程的描述。String
getProcedureTerm()
检索数据库供应商的“过程”首选术语。ResultSet
getPseudoColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern)
检索指定目录和架构中给定表中可用的伪或隐藏列的描述。int
getResultSetHoldability()
检索此数据库的ResultSet
对象的默认可保存性。RowIdLifetime
getRowIdLifetime()
指示此数据源是否支持SQLROWID
类型,以及RowId
对象保持有效的生存期。ResultSet
getSchemas()
检索此数据库中可用的模式名称。ResultSet
getSchemas(String catalog, String schemaPattern)
检索此数据库中可用的模式名称。String
getSchemaTerm()
检索数据库供应商的“架构”的首选术语。String
getSearchStringEscape()
检索可用于转义通配符的字符串。String
getSQLKeywords()
检索所有此数据库的SQL关键字的逗号分隔列表,这些关键字不是SQL:2003关键字。int
getSQLStateType()
指示SQLException.getSQLState
返回的SQLSTATE是X / Open(现在称为Open Group)SQL CLI还是SQL:2003。String
getStringFunctions()
检索此数据库可用的以逗号分隔的字符串函数列表。ResultSet
getSuperTables(String catalog, String schemaPattern, String tableNamePattern)
检索此数据库中特定模式中定义的表层次结构的描述。ResultSet
getSuperTypes(String catalog, String schemaPattern, String typeNamePattern)
检索此数据库中特定模式中定义的用户定义类型(UDT)层次结构的描述。String
getSystemFunctions()
检索此数据库可用的以逗号分隔的系统函数列表。ResultSet
getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern)
检索目录中可用的每个表的访问权限的描述。ResultSet
getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
检索给定目录中可用表的描述。ResultSet
getTableTypes()
检索此数据库中可用的表类型。String
getTimeDateFunctions()
检索此数据库可用的时间和日期函数的逗号分隔列表。ResultSet
getTypeInfo()
检索此数据库支持的所有数据类型的描述。ResultSet
getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types)
检索特定模式中定义的用户定义类型(UDT)的描述。String
getURL()
检索此DBMS的URL。String
getUserName()
检索此数据库已知的用户名。ResultSet
getVersionColumns(String catalog, String schema, String table)
检索在更新行中的任何值时自动更新的表列的描述。boolean
insertsAreDetected(int type)
通过调用方法ResultSet.rowInserted
检索是否可以检测到可见行插入。boolean
isCatalogAtStart()
检索目录是否出现在完全限定的表名称的开头。boolean
isReadOnly()
检索此数据库是否处于只读模式。boolean
locatorsUpdateCopy()
指示对LOB进行的更新是在副本上进行还是直接对LOB进行。boolean
nullPlusNonNullIsNull()
检索此数据库是否支持NULL
和非NULL
值之间的连接为NULL
。boolean
nullsAreSortedAtEnd()
检索NULL
值是否在末尾排序,而不考虑排序顺序。boolean
nullsAreSortedAtStart()
检索NULL
值是否在开始时排序,而不考虑排序顺序。boolean
nullsAreSortedHigh()
检索NULL
值是否排序为高。boolean
nullsAreSortedLow()
检索NULL
值是否排序较低。boolean
othersDeletesAreVisible(int type)
检索其他人删除是否可见。boolean
othersInsertsAreVisible(int type)
检索其他人创建的插入是否可见。boolean
othersUpdatesAreVisible(int type)
检索其他人所做的更新是否可见。boolean
ownDeletesAreVisible(int type)
检索结果集自己的删除是否可见。boolean
ownInsertsAreVisible(int type)
检索结果集自己的插入是否可见。boolean
ownUpdatesAreVisible(int type)
检索是否对于给定类型的ResultSet
对象,结果集自己的更新是可见的。boolean
storesLowerCaseIdentifiers()
检索此数据库是否将大小写混写的不带引号的SQL标识符视为不区分大小写,并将它们以小写形式存储。boolean
storesLowerCaseQuotedIdentifiers()
检索此数据库是否将大小写混写的带引号的SQL标识符视为不区分大小写,并以小写形式存储它们。boolean
storesMixedCaseIdentifiers()
检索此数据库是否将大小写混写的不带引号的SQL标识符视为不区分大小写,并以大小写形式存储它们。boolean
storesMixedCaseQuotedIdentifiers()
检索此数据库是否将大小写混写的带引号的SQL标识符视为不区分大小写,并以大小写形式存储它们。boolean
storesUpperCaseIdentifiers()
检索此数据库是否将大小写混写的不带引号的SQL标识符视为不区分大小写,并以大写形式存储它们。boolean
storesUpperCaseQuotedIdentifiers()
检索此数据库是否将大小写混写的带引号的SQL标识符视为不区分大小写,并以大写形式存储它们。boolean
supportsAlterTableWithAddColumn()
检索此数据库是否支持带有添加列的ALTER TABLE
。boolean
supportsAlterTableWithDropColumn()
检索此数据库是否支持带有drop column的ALTER TABLE
。boolean
supportsANSI92EntryLevelSQL()
检索此数据库是否支持ANSI92入门级SQL语法。boolean
supportsANSI92FullSQL()
检索此数据库是否支持ANSI92完整SQL语法。boolean
supportsANSI92IntermediateSQL()
检索此数据库是否支持支持的ANSI92中间SQL语法。boolean
supportsBatchUpdates()
检索此数据库是否支持批量更新。boolean
supportsCatalogsInDataManipulation()
检索是否可以在数据操作语句中使用目录名称。boolean
supportsCatalogsInIndexDefinitions()
检索是否可以在索引定义语句中使用目录名称。boolean
supportsCatalogsInPrivilegeDefinitions()
检索是否可以在权限定义语句中使用目录名称。boolean
supportsCatalogsInProcedureCalls()
检索是否可以在过程调用语句中使用目录名称。boolean
supportsCatalogsInTableDefinitions()
检索是否可以在表定义语句中使用目录名称。boolean
supportsColumnAliasing()
检索此数据库是否支持列别名。boolean
supportsConvert()
检索此数据库是否支持JDBC标量函数CONVERT
以将一种JDBC类型转换为另一种JDBC类型。boolean
supportsConvert(int fromType, int toType)
检索此数据库是否支持JDBC标量函数CONVERT
,以获取JDBC类型 fromType和 toType之间的转换。boolean
supportsCoreSQLGrammar()
检索此数据库是否支持ODBC Core SQL语法。boolean
supportsCorrelatedSubqueries()
检索此数据库是否支持相关子查询。boolean
supportsDataDefinitionAndDataManipulationTransactions()
检索此数据库是否同时支持事务中的数据定义和数据操作语句。boolean
supportsDataManipulationTransactionsOnly()
检索此数据库是否仅支持事务中的数据操作语句。boolean
supportsDifferentTableCorrelationNames()
检索在支持表相关名称时是否限制它们与表的名称不同。boolean
supportsExpressionsInOrderBy()
检索此数据库是否支持ORDER BY
列表中的表达式。boolean
supportsExtendedSQLGrammar()
检索此数据库是否支持ODBC Extended SQL语法。boolean
supportsFullOuterJoins()
检索此数据库是否支持完全嵌套的外连接。boolean
supportsGetGeneratedKeys()
检索在执行语句后是否可以检索自动生成的键boolean
supportsGroupBy()
检索此数据库是否支持某种形式的GROUP BY
子句。boolean
supportsGroupByBeyondSelect()
获取此数据库是否支持使用不包含在列SELECT
在一份声明GROUP BY
条款规定,所有在列SELECT
声明都包含在在GROUP BY
条款。boolean
supportsGroupByUnrelated()
检索此数据库是否支持使用GROUP BY
子句中不在SELECT
语句中的GROUP BY
。boolean
supportsIntegrityEnhancementFacility()
检索此数据库是否支持SQL Integrity Enhancement Facility。boolean
supportsLikeEscapeClause()
检索此数据库是否支持指定LIKE
转义子句。boolean
supportsLimitedOuterJoins()
检索此数据库是否为外连接提供有限支持。boolean
supportsMinimumSQLGrammar()
检索此数据库是否支持ODBC Minimum SQL语法。boolean
supportsMixedCaseIdentifiers()
检索此数据库是否将大小写混写的不带引号的SQL标识符视为区分大小写,因此以大小写形式存储它们。boolean
supportsMixedCaseQuotedIdentifiers()
检索此数据库是否将大小写混合的带引号的SQL标识符视为区分大小写,并因此以大小写混合的形式存储它们。boolean
supportsMultipleOpenResults()
检索是否有可能具有多个ResultSet
从返回的对象CallableStatement
对象同时进行。boolean
supportsMultipleResultSets()
检索此数据库是否支持从单个调用方法execute
获取多个ResultSet
对象。boolean
supportsMultipleTransactions()
检索此数据库是否允许一次打开多个事务(在不同的连接上)。boolean
supportsNamedParameters()
检索此数据库是否支持可调用语句的命名参数。boolean
supportsNonNullableColumns()
检索此数据库中的列是否可以定义为非可空。boolean
supportsOpenCursorsAcrossCommit()
检索此数据库是否支持在提交期间保持游标保持打开状态。boolean
supportsOpenCursorsAcrossRollback()
检索此数据库是否支持在回滚期间保持游标保持打开状态。boolean
supportsOpenStatementsAcrossCommit()
检索此数据库是否支持在提交期间保持语句开放。boolean
supportsOpenStatementsAcrossRollback()
检索此数据库是否支持在回滚期间保持语句打开。boolean
supportsOrderByUnrelated()
检索此数据库是否支持使用ORDER BY
子句中不在SELECT
语句中的ORDER BY
。boolean
supportsOuterJoins()
检索此数据库是否支持某种形式的外部联接。boolean
supportsPositionedDelete()
检索此数据库是否支持定位的DELETE
语句。boolean
supportsPositionedUpdate()
检索此数据库是否支持定位的UPDATE
语句。default boolean
supportsRefCursors()
检索此数据库是否支持REF CURSOR。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()
检索此数据库是否支持SELECT FOR UPDATE
语句。default boolean
supportsSharding()
检索此数据库是否支持分片。boolean
supportsStatementPooling()
检索此数据库是否支持语句池。boolean
supportsStoredFunctionsUsingCallSyntax()
检索此数据库是否支持使用存储过程转义语法调用用户定义的函数或供应商函数。boolean
supportsStoredProcedures()
检索此数据库是否支持使用存储过程转义语法的存储过程调用。boolean
supportsSubqueriesInComparisons()
检索此数据库是否支持比较表达式中的子查询。boolean
supportsSubqueriesInExists()
检索此数据库是否支持EXISTS
表达式中的子查询。boolean
supportsSubqueriesInIns()
检索此数据库是否支持IN
表达式中的子查询。boolean
supportsSubqueriesInQuantifieds()
检索此数据库是否支持量化表达式中的子查询。boolean
supportsTableCorrelationNames()
检索此数据库是否支持表关联名称。boolean
supportsTransactionIsolationLevel(int level)
检索此数据库是否支持给定的事务隔离级别。boolean
supportsTransactions()
检索此数据库是否支持事务。boolean
supportsUnion()
检索此数据库是否支持SQLUNION
。boolean
supportsUnionAll()
检索此数据库是否支持SQLUNION ALL
。boolean
updatesAreDetected(int type)
通过调用方法ResultSet.rowUpdated
检索是否可以检测到可见行更新。boolean
usesLocalFilePerTable()
检索此数据库是否为每个表使用文件。boolean
usesLocalFiles()
检索此数据库是否将表存储在本地文件中。-
声明方法的接口 java.sql.Wrapper
isWrapperFor, unwrap
-
-
-
-
字段详细信息
-
procedureResultUnknown
static final int procedureResultUnknown
表示不知道该过程是否返回结果。方法
getProcedures
返回的ResultSet
对象中的列PROCEDURE_TYPE
可能值。- 另请参见:
- 常数字段值
-
procedureNoResult
static final int procedureNoResult
表示该过程未返回结果。方法
getProcedures
返回的ResultSet
对象中的列PROCEDURE_TYPE
可能值。- 另请参见:
- 常数字段值
-
procedureReturnsResult
static final int procedureReturnsResult
表示该过程返回结果。方法
getProcedures
返回的ResultSet
对象中的列PROCEDURE_TYPE
可能值。- 另请参见:
- 常数字段值
-
procedureColumnUnknown
static final int procedureColumnUnknown
表示列的类型未知。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getProcedureColumns
。- 另请参见:
- 常数字段值
-
procedureColumnIn
static final int procedureColumnIn
表示该列存储IN参数。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getProcedureColumns
。- 另请参见:
- 常数字段值
-
procedureColumnInOut
static final int procedureColumnInOut
表示该列存储INOUT参数。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getProcedureColumns
。- 另请参见:
- 常数字段值
-
procedureColumnOut
static final int procedureColumnOut
表示该列存储OUT参数。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getProcedureColumns
。- 另请参见:
- 常数字段值
-
procedureColumnReturn
static final int procedureColumnReturn
表示该列存储返回值。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getProcedureColumns
。- 另请参见:
- 常数字段值
-
procedureColumnResult
static final int procedureColumnResult
表示该列存储结果。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getProcedureColumns
。- 另请参见:
- 常数字段值
-
procedureNoNulls
static final int procedureNoNulls
表示不允许NULL
值。方法
getProcedureColumns
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
procedureNullable
static final int procedureNullable
表示允许NULL
值。方法
getProcedureColumns
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
procedureNullableUnknown
static final int procedureNullableUnknown
指示是否允许NULL
值是未知的。方法
getProcedureColumns
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
columnNoNulls
static final int columnNoNulls
表示该列可能不允许NULL
值。该列的可能值
NULLABLE
在ResultSet
该方法返回getColumns
。- 另请参见:
- 常数字段值
-
columnNullable
static final int columnNullable
表示该列肯定允许NULL
值。该列的可能值
NULLABLE
在ResultSet
该方法返回getColumns
。- 另请参见:
- 常数字段值
-
columnNullableUnknown
static final int columnNullableUnknown
表示列的可为空性未知。该列的可能值
NULLABLE
在ResultSet
该方法返回getColumns
。- 另请参见:
- 常数字段值
-
bestRowTemporary
static final int bestRowTemporary
指示最佳行标识符的范围是非常临时的,仅在使用行时持久。方法
getBestRowIdentifier
返回的ResultSet
对象中的列SCOPE
可能值。- 另请参见:
- 常数字段值
-
bestRowTransaction
static final int bestRowTransaction
指示最佳行标识符的范围是当前事务的剩余部分。方法
getBestRowIdentifier
返回的ResultSet
对象中的列SCOPE
可能值。- 另请参见:
- 常数字段值
-
bestRowSession
static final int bestRowSession
指示最佳行标识符的范围是当前会话的剩余部分。方法
getBestRowIdentifier
返回的ResultSet
对象中的列SCOPE
可能值。- 另请参见:
- 常数字段值
-
bestRowUnknown
static final int bestRowUnknown
表示最佳行标识符可能是也可能不是伪列。方法
getBestRowIdentifier
返回的ResultSet
对象中的列PSEUDO_COLUMN
可能值。- 另请参见:
- 常数字段值
-
bestRowNotPseudo
static final int bestRowNotPseudo
指示最佳行标识符不是伪列。方法
getBestRowIdentifier
返回的ResultSet
对象中的列PSEUDO_COLUMN
可能值。- 另请参见:
- 常数字段值
-
bestRowPseudo
static final int bestRowPseudo
表示最佳行标识符是伪列。方法
getBestRowIdentifier
返回的ResultSet
对象中的列PSEUDO_COLUMN
可能值。- 另请参见:
- 常数字段值
-
versionColumnUnknown
static final int versionColumnUnknown
表示此版本列可能是也可能不是伪列。方法
getVersionColumns
返回的ResultSet
对象中的列PSEUDO_COLUMN
可能值。- 另请参见:
- 常数字段值
-
versionColumnNotPseudo
static final int versionColumnNotPseudo
表示此版本列不是伪列。方法
getVersionColumns
返回的ResultSet
对象中的列PSEUDO_COLUMN
可能值。- 另请参见:
- 常数字段值
-
versionColumnPseudo
static final int versionColumnPseudo
表示此版本列是伪列。方法
getVersionColumns
返回的ResultSet
对象中的列PSEUDO_COLUMN
可能值。- 另请参见:
- 常数字段值
-
importedKeyCascade
static final int importedKeyCascade
对于列UPDATE_RULE
,指示当更新主键时,外键(导入的键)被更改为与其一致。 对于列DELETE_RULE
,它指示删除主键时,将删除导入该键的行。对于各列的可能值
UPDATE_RULE
和DELETE_RULE
在ResultSet
通过所述方法返回的对象getImportedKeys
,getExportedKeys
,和getCrossReference
。- 另请参见:
- 常数字段值
-
importedKeyRestrict
static final int importedKeyRestrict
对于列UPDATE_RULE
,指示如果主键已被另一个表作为外键导入,则主键可能不会更新。 对于列DELETE_RULE
,指示如果主键已被另一个表作为外键导入,则可能不会删除主键。对于各列的可能值
UPDATE_RULE
和DELETE_RULE
在ResultSet
通过所述方法返回的对象getImportedKeys
,getExportedKeys
,和getCrossReference
。- 另请参见:
- 常数字段值
-
importedKeySetNull
static final int importedKeySetNull
对于列UPDATE_RULE
和DELETE_RULE
,指示更新或删除主键时,外键(导入的键)更改为NULL
。对于各列的可能值
UPDATE_RULE
和DELETE_RULE
在ResultSet
通过所述方法返回的对象getImportedKeys
,getExportedKeys
,和getCrossReference
。- 另请参见:
- 常数字段值
-
importedKeyNoAction
static final int importedKeyNoAction
对于列UPDATE_RULE
和DELETE_RULE
,指示如果已导入主键,则无法更新或删除主键。对于各列的可能值
UPDATE_RULE
和DELETE_RULE
在ResultSet
通过所述方法返回的对象getImportedKeys
,getExportedKeys
,和getCrossReference
。- 另请参见:
- 常数字段值
-
importedKeySetDefault
static final int importedKeySetDefault
对于列UPDATE_RULE
和DELETE_RULE
,指示如果更新或删除主键,则将外键(导入的键)设置为默认值。对于各列的可能值
UPDATE_RULE
和DELETE_RULE
在ResultSet
通过所述方法返回的对象getImportedKeys
,getExportedKeys
,和getCrossReference
。- 另请参见:
- 常数字段值
-
importedKeyInitiallyDeferred
static final int importedKeyInitiallyDeferred
表示可推迟性。 有关定义,请参见SQL-92。该列的可能值
DEFERRABILITY
在ResultSet
通过所述方法返回的对象getImportedKeys
,getExportedKeys
,和getCrossReference
。- 另请参见:
- 常数字段值
-
importedKeyInitiallyImmediate
static final int importedKeyInitiallyImmediate
表示可推迟性。 有关定义,请参见SQL-92。该列的可能值
DEFERRABILITY
在ResultSet
通过所述方法返回的对象getImportedKeys
,getExportedKeys
,和getCrossReference
。- 另请参见:
- 常数字段值
-
importedKeyNotDeferrable
static final int importedKeyNotDeferrable
表示可推迟性。 有关定义,请参见SQL-92。该列的可能值
DEFERRABILITY
在ResultSet
通过所述方法返回的对象getImportedKeys
,getExportedKeys
,和getCrossReference
。- 另请参见:
- 常数字段值
-
typeNoNulls
static final int typeNoNulls
表示此数据类型不允许使用NULL
值。方法
getTypeInfo
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
typeNullable
static final int typeNullable
表示此数据类型允许使用NULL
值。方法
getTypeInfo
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
typeNullableUnknown
static final int typeNullableUnknown
表示不知道此数据类型是否允许NULL
值。方法
getTypeInfo
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
typePredNone
static final int typePredNone
表示此类型不支持WHERE
搜索子句。方法
getTypeInfo
返回的ResultSet
对象中的列SEARCHABLE
可能值。- 另请参见:
- 常数字段值
-
typePredChar
static final int typePredChar
表示数据类型只能用于使用LIKE
谓词的WHERE
搜索子句中。方法
getTypeInfo
返回的ResultSet
对象中的列SEARCHABLE
可能值。- 另请参见:
- 常数字段值
-
typePredBasic
static final int typePredBasic
表示数据类型只能用于不使用LIKE
谓词的WHERE
搜索子句。方法
getTypeInfo
返回的ResultSet
对象中的列SEARCHABLE
可能值。- 另请参见:
- 常数字段值
-
typeSearchable
static final int typeSearchable
表示所有WHERE
搜索子句都可以基于此类型。方法
getTypeInfo
返回的ResultSet
对象中的列SEARCHABLE
可能值。- 另请参见:
- 常数字段值
-
tableIndexStatistic
static final short tableIndexStatistic
指示此列包含与表的索引描述一起返回的表统计信息。方法
getIndexInfo
返回的ResultSet
对象中的列TYPE
可能值。- 另请参见:
- 常数字段值
-
tableIndexClustered
static final short tableIndexClustered
表示此表索引是聚簇索引。方法
getIndexInfo
返回的ResultSet
对象中的列TYPE
可能值。- 另请参见:
- 常数字段值
-
tableIndexHashed
static final short tableIndexHashed
表示此表索引是散列索引。方法
getIndexInfo
返回的ResultSet
对象中的列TYPE
可能值。- 另请参见:
- 常数字段值
-
tableIndexOther
static final short tableIndexOther
表示此表索引不是聚簇索引,散列索引或表统计信息; 它不是这些。方法
getIndexInfo
返回的ResultSet
对象中的列TYPE
可能值。- 另请参见:
- 常数字段值
-
attributeNoNulls
static final short attributeNoNulls
表示可能不允许NULL
值。方法
getAttributes
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
attributeNullable
static final short attributeNullable
表示绝对允许NULL
值。方法
getAttributes
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
attributeNullableUnknown
static final short attributeNullableUnknown
指示是否允许NULL
值是否已知。方法
getAttributes
返回的ResultSet
对象中的列NULLABLE
可能值。- 另请参见:
- 常数字段值
-
sqlStateXOpen
static final int sqlStateXOpen
该方法一个可能的返回值DatabaseMetaData.getSQLStateType
,其用于指示该方法返回的值是否SQLException.getSQLState
是X /打开(现在知道的公开组)SQL CLI SQLSTATE值。- 从以下版本开始:
- 1.4
- 另请参见:
- 常数字段值
-
sqlStateSQL
static final int sqlStateSQL
该方法一个可能的返回值DatabaseMetaData.getSQLStateType
,其用于指示该方法返回的值是否SQLException.getSQLState
是SQLSTATE值。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
sqlStateSQL99
static final int sqlStateSQL99
该方法一个可能的返回值DatabaseMetaData.getSQLStateType
,其用于指示该方法返回的值是否SQLException.getSQLState
是一个SQL99 SQLSTATE值。注意:此常量仅出于兼容性原因而保留。 开发人员应该使用常量
sqlStateSQL
。- 从以下版本开始:
- 1.4
- 另请参见:
- 常数字段值
-
functionColumnUnknown
static final int functionColumnUnknown
表示参数或列的类型未知。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getFunctionColumns
。- 另请参见:
- 常数字段值
-
functionColumnIn
static final int functionColumnIn
表示参数或列是IN参数。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getFunctionColumns
。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionColumnInOut
static final int functionColumnInOut
表示参数或列是INOUT参数。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getFunctionColumns
。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionColumnOut
static final int functionColumnOut
表示参数或列是OUT参数。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getFunctionColumns
。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionReturn
static final int functionReturn
表示参数或列是返回值。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getFunctionColumns
。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionColumnResult
static final int functionColumnResult
指示参数或列是结果集中的列。该列的可能值
COLUMN_TYPE
在ResultSet
该方法返回getFunctionColumns
。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionNoNulls
static final int functionNoNulls
表示不允许NULL
值。方法
getFunctionColumns
返回的ResultSet
对象中的列NULLABLE
可能值。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionNullable
static final int functionNullable
表示允许NULL
值。方法
getFunctionColumns
返回的ResultSet
对象中的列NULLABLE
可能值。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionNullableUnknown
static final int functionNullableUnknown
指示是否允许NULL
值是未知的。方法
getFunctionColumns
返回的ResultSet
对象中的列NULLABLE
可能值。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionResultUnknown
static final int functionResultUnknown
表示不知道函数是返回结果还是表。方法
getFunctions
返回的ResultSet
对象中的列FUNCTION_TYPE
可能值。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionNoTable
static final int functionNoTable
表示该函数未返回表。方法
getFunctions
返回的ResultSet
对象中的列FUNCTION_TYPE
可能值。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
functionReturnsTable
static final int functionReturnsTable
表示该函数返回一个表。方法
getFunctions
返回的ResultSet
对象中的列FUNCTION_TYPE
可能值。- 从以下版本开始:
- 1.6
- 另请参见:
- 常数字段值
-
-
方法详细信息
-
allProceduresAreCallable
boolean allProceduresAreCallable() throws SQLException
检索当前用户是否可以调用方法getProcedures
返回的所有过程。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
allTablesAreSelectable
boolean allTablesAreSelectable() throws SQLException
检索当前用户是否可以在SELECT
语句中使用方法getTables
返回的所有表。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getURL
String getURL() throws SQLException
检索此DBMS的URL。- 结果
-
此DBMS的URL或
null
如果无法生成) - 异常
-
SQLException
- 如果发生数据库访问错误
-
getUserName
String getUserName() throws SQLException
检索此数据库已知的用户名。- 结果
- 数据库用户名
- 异常
-
SQLException
- 如果发生数据库访问错误
-
isReadOnly
boolean isReadOnly() throws SQLException
检索此数据库是否处于只读模式。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
nullsAreSortedHigh
boolean nullsAreSortedHigh() throws SQLException
检索NULL
值是否排序为高。 排序高意味着NULL
值排序高于域中的任何其他值。 按升序排列,如果此方法返回true
,则NULL
将显示NULL
值。 相反,方法nullsAreSortedAtEnd
指示NULL
值是否在末尾排序而不管排序顺序如何。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
nullsAreSortedLow
boolean nullsAreSortedLow() throws SQLException
检索NULL
值是否排序较低。 排序低意味着NULL
值排序低于域中的任何其他值。 按升序排列,如果此方法返回true
,则会在开头显示NULL
值。 相反,方法nullsAreSortedAtStart
指示是否在开始时对NULL
值进行排序,而不管排序顺序如何。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
nullsAreSortedAtStart
boolean nullsAreSortedAtStart() throws SQLException
检索NULL
值是否在开始时排序,而不考虑排序顺序。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
nullsAreSortedAtEnd
boolean nullsAreSortedAtEnd() throws SQLException
检索NULL
值是否在末尾排序,而不考虑排序顺序。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getDatabaseProductName
String getDatabaseProductName() throws SQLException
检索此数据库产品的名称。- 结果
- 数据库产品名称
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getDatabaseProductVersion
String getDatabaseProductVersion() throws SQLException
检索此数据库产品的版本号。- 结果
- 数据库版本号
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getDriverName
String getDriverName() throws SQLException
检索此JDBC驱动程序的名称。- 结果
- JDBC驱动程序名称
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getDriverVersion
String getDriverVersion() throws SQLException
以String
检索此JDBC驱动程序的版本号。- 结果
- JDBC驱动程序版本
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getDriverMajorVersion
int getDriverMajorVersion()
检索此JDBC驱动程序的主要版本号。- 结果
- JDBC驱动程序主要版本
-
getDriverMinorVersion
int getDriverMinorVersion()
检索此JDBC驱动程序的次要版本号。- 结果
- JDBC驱动程序次要版本号
-
usesLocalFiles
boolean usesLocalFiles() throws SQLException
检索此数据库是否将表存储在本地文件中。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
usesLocalFilePerTable
boolean usesLocalFilePerTable() throws SQLException
检索此数据库是否为每个表使用文件。- 结果
-
true
如果此数据库为每个表使用本地文件; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsMixedCaseIdentifiers
boolean supportsMixedCaseIdentifiers() throws SQLException
检索此数据库是否将大小写混写的不带引号的SQL标识符视为区分大小写,因此以大小写形式存储它们。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
storesUpperCaseIdentifiers
boolean storesUpperCaseIdentifiers() throws SQLException
检索此数据库是否将大小写混写的不带引号的SQL标识符视为不区分大小写,并以大写形式存储它们。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
storesLowerCaseIdentifiers
boolean storesLowerCaseIdentifiers() throws SQLException
检索此数据库是否将大小写混写的不带引号的SQL标识符视为不区分大小写,并将它们以小写形式存储。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
storesMixedCaseIdentifiers
boolean storesMixedCaseIdentifiers() throws SQLException
检索此数据库是否将大小写混写的不带引号的SQL标识符视为不区分大小写,并以大小写形式存储它们。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsMixedCaseQuotedIdentifiers
boolean supportsMixedCaseQuotedIdentifiers() throws SQLException
检索此数据库是否将大小写混合的带引号的SQL标识符视为区分大小写,并因此以大小写混合的形式存储它们。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
storesUpperCaseQuotedIdentifiers
boolean storesUpperCaseQuotedIdentifiers() throws SQLException
检索此数据库是否将大小写混写的带引号的SQL标识符视为不区分大小写,并以大写形式存储它们。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
storesLowerCaseQuotedIdentifiers
boolean storesLowerCaseQuotedIdentifiers() throws SQLException
检索此数据库是否将大小写混写的带引号的SQL标识符视为不区分大小写,并以小写形式存储它们。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
storesMixedCaseQuotedIdentifiers
boolean storesMixedCaseQuotedIdentifiers() throws SQLException
检索此数据库是否将大小写混写的带引号的SQL标识符视为不区分大小写,并以大小写形式存储它们。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getIdentifierQuoteString
String getIdentifierQuoteString() throws SQLException
检索用于引用SQL标识符的字符串。 如果不支持标识符引用,则此方法返回空格“”。- 结果
- 引号字符串或空格(如果不支持引用)
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getSQLKeywords
String getSQLKeywords() throws SQLException
检索所有此数据库的SQL关键字的逗号分隔列表,这些关键字不是SQL:2003关键字。- 结果
- 此数据库的关键字列表也不是SQL:2003关键字
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getNumericFunctions
String getNumericFunctions() throws SQLException
检索此数据库可用的以逗号分隔的数学函数列表。 这些是JDBC函数转义子句中使用的Open / Open CLI数学函数名称。- 结果
- 此数据库支持的数学函数列表
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getStringFunctions
String getStringFunctions() throws SQLException
检索此数据库可用的以逗号分隔的字符串函数列表。 这些是JDBC函数转义子句中使用的Open Group CLI字符串函数名称。- 结果
- 此数据库支持的字符串函数列表
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getSystemFunctions
String getSystemFunctions() throws SQLException
检索此数据库可用的以逗号分隔的系统函数列表。 这些是JDBC函数转义子句中使用的Open Group CLI系统函数名称。- 结果
- 此数据库支持的系统函数列表
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getTimeDateFunctions
String getTimeDateFunctions() throws SQLException
检索此数据库可用的时间和日期函数的逗号分隔列表。- 结果
- 此数据库支持的时间和日期函数列表
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getSearchStringEscape
String getSearchStringEscape() throws SQLException
检索可用于转义通配符的字符串。 这是可用于在作为模式的目录搜索参数中转义“_”或“%”的字符串(因此使用其中一个通配符)。'_'字符代表任何单个字符; '%'字符表示零个或多个字符的任何序列。
- 结果
- 用于转义通配符的字符串
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getExtraNameCharacters
String getExtraNameCharacters() throws SQLException
检索可以在不带引号的标识符名称(超出az,AZ,0-9和_的那些名称)中使用的所有“额外”字符。- 结果
- 包含额外字符的字符串
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsAlterTableWithAddColumn
boolean supportsAlterTableWithAddColumn() throws SQLException
检索此数据库是否支持带有添加列的ALTER TABLE
。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsAlterTableWithDropColumn
boolean supportsAlterTableWithDropColumn() throws SQLException
检索此数据库是否支持带有drop column的ALTER TABLE
。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsColumnAliasing
boolean supportsColumnAliasing() throws SQLException
检索此数据库是否支持列别名。如果是这样,SQL AS子句可用于为计算列提供名称或根据需要为列提供别名。
- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
nullPlusNonNullIsNull
boolean nullPlusNonNullIsNull() throws SQLException
检索此数据库是否支持NULL
和非NULL
值之间的连接为NULL
。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsConvert
boolean supportsConvert() throws SQLException
检索此数据库是否支持JDBC标量函数CONVERT
以将一种JDBC类型转换为另一种JDBC类型。 JDBC类型是java.sql.Types
定义的通用SQL数据类型。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsConvert
boolean supportsConvert(int fromType, int toType) throws SQLException
检索此数据库是否支持JDBC标量函数CONVERT
以便在JDBC类型fromType和toType之间进行转换。 JDBC类型是java.sql.Types
定义的通用SQL数据类型。- 参数
-
fromType
- 要转换的类型; 类java.sql.Types
一个类型代码 -
toType
- 要转换为的类型; 类java.sql.Types
一个类型代码 - 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
Types
-
supportsTableCorrelationNames
boolean supportsTableCorrelationNames() throws SQLException
检索此数据库是否支持表关联名称。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsDifferentTableCorrelationNames
boolean supportsDifferentTableCorrelationNames() throws SQLException
检索在支持表相关名称时是否限制它们与表的名称不同。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsExpressionsInOrderBy
boolean supportsExpressionsInOrderBy() throws SQLException
检索此数据库是否支持ORDER BY
列表中的表达式。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsOrderByUnrelated
boolean supportsOrderByUnrelated() throws SQLException
检索此数据库是否支持使用ORDER BY
子句中不在SELECT
语句中的ORDER BY
。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsGroupBy
boolean supportsGroupBy() throws SQLException
检索此数据库是否支持某种形式的GROUP BY
子句。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsGroupByUnrelated
boolean supportsGroupByUnrelated() throws SQLException
检索此数据库是否支持使用GROUP BY
子句中不在SELECT
语句中的GROUP BY
。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsGroupByBeyondSelect
boolean supportsGroupByBeyondSelect() throws SQLException
获取此数据库是否支持使用不包含在列SELECT
在一份声明GROUP BY
条款规定,所有在列SELECT
声明都包含在在GROUP BY
条款。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsLikeEscapeClause
boolean supportsLikeEscapeClause() throws SQLException
检索此数据库是否支持指定LIKE
转义子句。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsMultipleResultSets
boolean supportsMultipleResultSets() throws SQLException
检索此数据库是否支持从单个调用方法execute
获取多个ResultSet
对象。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsMultipleTransactions
boolean supportsMultipleTransactions() throws SQLException
检索此数据库是否允许一次打开多个事务(在不同的连接上)。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsNonNullableColumns
boolean supportsNonNullableColumns() throws SQLException
检索此数据库中的列是否可以定义为非可空。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsMinimumSQLGrammar
boolean supportsMinimumSQLGrammar() throws SQLException
检索此数据库是否支持ODBC Minimum SQL语法。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsCoreSQLGrammar
boolean supportsCoreSQLGrammar() throws SQLException
检索此数据库是否支持ODBC Core SQL语法。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsExtendedSQLGrammar
boolean supportsExtendedSQLGrammar() throws SQLException
检索此数据库是否支持ODBC Extended SQL语法。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsANSI92EntryLevelSQL
boolean supportsANSI92EntryLevelSQL() throws SQLException
检索此数据库是否支持ANSI92入门级SQL语法。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsANSI92IntermediateSQL
boolean supportsANSI92IntermediateSQL() throws SQLException
检索此数据库是否支持支持的ANSI92中间SQL语法。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsANSI92FullSQL
boolean supportsANSI92FullSQL() throws SQLException
检索此数据库是否支持ANSI92完整SQL语法。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsIntegrityEnhancementFacility
boolean supportsIntegrityEnhancementFacility() throws SQLException
检索此数据库是否支持SQL Integrity Enhancement Facility。- 结果
-
true
若有, 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsOuterJoins
boolean supportsOuterJoins() throws SQLException
检索此数据库是否支持某种形式的外部联接。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsFullOuterJoins
boolean supportsFullOuterJoins() throws SQLException
检索此数据库是否支持完全嵌套的外连接。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsLimitedOuterJoins
boolean supportsLimitedOuterJoins() throws SQLException
检索此数据库是否为外连接提供有限支持。 (这将是true
,如果该方法supportsFullOuterJoins
返回true
)。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getSchemaTerm
String getSchemaTerm() throws SQLException
检索数据库供应商的“架构”的首选术语。- 结果
- “架构”的供应商术语
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getProcedureTerm
String getProcedureTerm() throws SQLException
检索数据库供应商的“过程”首选术语。- 结果
- “程序”的供应商术语
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getCatalogTerm
String getCatalogTerm() throws SQLException
检索数据库供应商的“目录”首选术语。- 结果
- “目录”的供应商术语
- 异常
-
SQLException
- 如果发生数据库访问错误
-
isCatalogAtStart
boolean isCatalogAtStart() throws SQLException
检索目录是否出现在完全限定的表名称的开头。 如果没有,目录将显示在最后。- 结果
-
true
如果目录名称出现在完全限定的表名称的开头; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getCatalogSeparator
String getCatalogSeparator() throws SQLException
检索此数据库用作目录和表名之间的分隔符的String
。- 结果
- 分隔符字符串
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSchemasInDataManipulation
boolean supportsSchemasInDataManipulation() throws SQLException
检索是否可以在数据操作语句中使用模式名称。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSchemasInProcedureCalls
boolean supportsSchemasInProcedureCalls() throws SQLException
检索是否可以在过程调用语句中使用模式名称。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSchemasInTableDefinitions
boolean supportsSchemasInTableDefinitions() throws SQLException
检索是否可以在表定义语句中使用模式名称。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSchemasInIndexDefinitions
boolean supportsSchemasInIndexDefinitions() throws SQLException
检索模式名称是否可以在索引定义语句中使用。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSchemasInPrivilegeDefinitions
boolean supportsSchemasInPrivilegeDefinitions() throws SQLException
检索是否可以在权限定义语句中使用模式名称。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsCatalogsInDataManipulation
boolean supportsCatalogsInDataManipulation() throws SQLException
检索是否可以在数据操作语句中使用目录名称。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsCatalogsInProcedureCalls
boolean supportsCatalogsInProcedureCalls() throws SQLException
检索是否可以在过程调用语句中使用目录名称。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsCatalogsInTableDefinitions
boolean supportsCatalogsInTableDefinitions() throws SQLException
检索是否可以在表定义语句中使用目录名称。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsCatalogsInIndexDefinitions
boolean supportsCatalogsInIndexDefinitions() throws SQLException
检索是否可以在索引定义语句中使用目录名称。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsCatalogsInPrivilegeDefinitions
boolean supportsCatalogsInPrivilegeDefinitions() throws SQLException
检索是否可以在权限定义语句中使用目录名称。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsPositionedDelete
boolean supportsPositionedDelete() throws SQLException
检索此数据库是否支持定位的DELETE
语句。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsPositionedUpdate
boolean supportsPositionedUpdate() throws SQLException
检索此数据库是否支持定位的UPDATE
语句。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSelectForUpdate
boolean supportsSelectForUpdate() throws SQLException
检索此数据库是否支持SELECT FOR UPDATE
语句。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsStoredProcedures
boolean supportsStoredProcedures() throws SQLException
检索此数据库是否支持使用存储过程转义语法的存储过程调用。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSubqueriesInComparisons
boolean supportsSubqueriesInComparisons() throws SQLException
检索此数据库是否支持比较表达式中的子查询。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSubqueriesInExists
boolean supportsSubqueriesInExists() throws SQLException
检索此数据库是否支持EXISTS
表达式中的子查询。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSubqueriesInIns
boolean supportsSubqueriesInIns() throws SQLException
检索此数据库是否支持IN
表达式中的子查询。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsSubqueriesInQuantifieds
boolean supportsSubqueriesInQuantifieds() throws SQLException
检索此数据库是否支持量化表达式中的子查询。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsCorrelatedSubqueries
boolean supportsCorrelatedSubqueries() throws SQLException
检索此数据库是否支持相关子查询。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsUnion
boolean supportsUnion() throws SQLException
检索此数据库是否支持SQLUNION
。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsUnionAll
boolean supportsUnionAll() throws SQLException
检索此数据库是否支持SQLUNION ALL
。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsOpenCursorsAcrossCommit
boolean supportsOpenCursorsAcrossCommit() throws SQLException
检索此数据库是否支持在提交期间保持游标保持打开状态。- 结果
-
true
如果游标始终保持打开状态;false
如果他们可能不会保持开放状态 - 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsOpenCursorsAcrossRollback
boolean supportsOpenCursorsAcrossRollback() throws SQLException
检索此数据库是否支持在回滚期间保持游标保持打开状态。- 结果
-
true
如果游标始终保持打开状态;false
如果他们可能不会保持开放状态 - 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsOpenStatementsAcrossCommit
boolean supportsOpenStatementsAcrossCommit() throws SQLException
检索此数据库是否支持在提交期间保持语句开放。- 结果
-
true
if语句始终保持打开状态;false
如果他们可能不会保持开放状态 - 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsOpenStatementsAcrossRollback
boolean supportsOpenStatementsAcrossRollback() throws SQLException
检索此数据库是否支持在回滚期间保持语句打开。- 结果
-
true
if语句始终保持打开状态;false
如果他们可能不会保持开放状态 - 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxBinaryLiteralLength
int getMaxBinaryLiteralLength() throws SQLException
检索此数据库允许在内联二进制文字中使用的最大十六进制字符数。- 结果
- 最大二进制文字的最大长度(以十六进制字符表示); 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxCharLiteralLength
int getMaxCharLiteralLength() throws SQLException
检索此数据库允许的字符文字的最大字符数。- 结果
- 字符文字允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxColumnNameLength
int getMaxColumnNameLength() throws SQLException
检索此数据库允许列名称的最大字符数。- 结果
- 列名允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxColumnsInGroupBy
int getMaxColumnsInGroupBy() throws SQLException
检索此数据库在GROUP BY
子句中允许的最大列数。- 结果
- 允许的最大列数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxColumnsInIndex
int getMaxColumnsInIndex() throws SQLException
检索此数据库在索引中允许的最大列数。- 结果
- 允许的最大列数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxColumnsInOrderBy
int getMaxColumnsInOrderBy() throws SQLException
检索此数据库允许在ORDER BY
子句中使用的最大列数。- 结果
- 允许的最大列数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxColumnsInSelect
int getMaxColumnsInSelect() throws SQLException
检索此数据库允许在SELECT
列表中包含的最大列数。- 结果
- 允许的最大列数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxColumnsInTable
int getMaxColumnsInTable() throws SQLException
检索此数据库允许在表中使用的最大列数。- 结果
- 允许的最大列数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxConnections
int getMaxConnections() throws SQLException
检索可能的此数据库的最大并发连接数。- 结果
- 一次可能有的最大活动连接数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxCursorNameLength
int getMaxCursorNameLength() throws SQLException
检索此数据库允许在游标名称中使用的最大字符数。- 结果
- 游标名称中允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxIndexLength
int getMaxIndexLength() throws SQLException
检索此数据库允许索引的最大字节数,包括索引的所有部分。- 结果
- 允许的最大字节数; 这个限制包括指数的所有组成部分的复合; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxSchemaNameLength
int getMaxSchemaNameLength() throws SQLException
检索此数据库允许在模式名称中使用的最大字符数。- 结果
- 模式名称中允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxProcedureNameLength
int getMaxProcedureNameLength() throws SQLException
检索此数据库允许在过程名称中使用的最大字符数。- 结果
- 过程名称中允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxCatalogNameLength
int getMaxCatalogNameLength() throws SQLException
检索此数据库允许在目录名称中使用的最大字符数。- 结果
- 目录名称中允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxRowSize
int getMaxRowSize() throws SQLException
检索此数据库允许在单行中使用的最大字节数。- 结果
- 一行允许的最大字节数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
doesMaxRowSizeIncludeBlobs
boolean doesMaxRowSizeIncludeBlobs() throws SQLException
检索方法getMaxRowSize
的返回值是否包括SQL数据类型LONGVARCHAR
和LONGVARBINARY
。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxStatementLength
int getMaxStatementLength() throws SQLException
检索此数据库在SQL语句中允许的最大字符数。- 结果
- SQL语句允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxStatements
int getMaxStatements() throws SQLException
检索可以同时打开的此数据库的最大活动语句数。- 结果
- 一次可以打开的最大语句数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxTableNameLength
int getMaxTableNameLength() throws SQLException
检索此数据库允许在表名中使用的最大字符数。- 结果
- 表名允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxTablesInSelect
int getMaxTablesInSelect() throws SQLException
检索此数据库在SELECT
语句中允许的最大表数。- 结果
-
SELECT
语句中允许的最大表数; 零的结果意味着没有限制或限制未知 - 异常
-
SQLException
- 如果发生数据库访问错误
-
getMaxUserNameLength
int getMaxUserNameLength() throws SQLException
检索此数据库允许在用户名中使用的最大字符数。- 结果
- 用户名允许的最大字符数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getDefaultTransactionIsolation
int getDefaultTransactionIsolation() throws SQLException
检索此数据库的默认事务隔离级别。 可能的值在java.sql.Connection
中定义。- 结果
- 默认的隔离级别
- 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
Connection
-
supportsTransactions
boolean supportsTransactions() throws SQLException
检索此数据库是否支持事务。 如果不是,则调用方法commit
是noop,隔离级别为TRANSACTION_NONE
。- 结果
-
true
如果支持交易; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsTransactionIsolationLevel
boolean supportsTransactionIsolationLevel(int level) throws SQLException
检索此数据库是否支持给定的事务隔离级别。- 参数
-
level
-java.sql.Connection
定义的事务隔离级别java.sql.Connection
- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
Connection
-
supportsDataDefinitionAndDataManipulationTransactions
boolean supportsDataDefinitionAndDataManipulationTransactions() throws SQLException
检索此数据库是否同时支持事务中的数据定义和数据操作语句。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
supportsDataManipulationTransactionsOnly
boolean supportsDataManipulationTransactionsOnly() throws SQLException
检索此数据库是否仅支持事务中的数据操作语句。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
dataDefinitionCausesTransactionCommit
boolean dataDefinitionCausesTransactionCommit() throws SQLException
检索事务中的数据定义语句是否强制事务提交。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
dataDefinitionIgnoredInTransactions
boolean dataDefinitionIgnoredInTransactions() throws SQLException
检索此数据库是否忽略事务中的数据定义语句。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误
-
getProcedures
ResultSet getProcedures(String catalog, String schemaPattern, String procedureNamePattern) throws SQLException
检索给定目录中可用的存储过程的描述。仅返回与架构和过程名称条件匹配的过程描述。 他们被下令
PROCEDURE_CAT
,PROCEDURE_SCHEM
,PROCEDURE_NAME
和SPECIFIC_ NAME
。每个过程描述都包含以下列:
- PROCEDURE_CAT字符串
=>
程序目录(可能是null
) - PROCEDURE_SCHEM字符串
=>
过程模式(可能是null
) - PROCEDURE_NAME字符串
=>
过程名称 - 留作将来使用
- 留作将来使用
- 留作将来使用
- 备注字符串
=>
对程序的解释性说明 - PROCEDURE_TYPE短
=>
种程序:- procedureResultUnknown - 无法确定是否返回返回值
- procedureNoResult - 不返回返回值
- procedureReturnsResult - 返回返回值
- SPECIFIC_NAME字符串
=>
在其架构中唯一标识此过程的名称。
用户可能没有权限执行
getProcedures
返回的任何过程- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
procedureNamePattern
- 过程名称模式; 必须匹配存储在数据库中的过程名称 - 结果
-
ResultSet
- 每行是一个过程描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getSearchStringEscape()
- PROCEDURE_CAT字符串
-
getProcedureColumns
ResultSet getProcedureColumns(String catalog, String schemaPattern, String procedureNamePattern, String columnNamePattern) throws SQLException
检索给定目录的存储过程参数和结果列的描述。仅返回与架构,过程和参数名称条件匹配的描述。 它们由PROCEDURE_CAT,PROCEDURE_SCHEM,PROCEDURE_NAME和SPECIFIC_NAME订购。 在此范围内,返回值(如果有)是第一个。 接下来是调用顺序中的参数描述。 列描述遵循列号顺序。
ResultSet
中的每一行都是参数说明或列说明,其中包含以下字段:- PROCEDURE_CAT字符串
=>
程序目录(可能是null
) - PROCEDURE_SCHEM字符串
=>
过程模式(可能是null
) - PROCEDURE_NAME字符串
=>
过程名称 - COLUMN_NAME字符串
=>
列/参数名称 - COLUMN_TYPE短
=>
种类/参数:- procedureColumnUnknown - 没人知道
- procedureColumnIn - IN参数
- procedureColumnInOut - INOUT参数
- procedureColumnOut - OUT参数
- procedureColumnReturn - 过程返回值
- procedureColumnResult -
ResultSet
结果列
- DATA_TYPE int
=>
java.sql.Types中的SQL类型 - TYPE_NAME字符串
=>
SQL类型名称,对于UDT类型,类型名称是完全限定的 - PRECISION int
=>
精度 - LENGTH int
=>
数据的字节长度 - SCALE short
=>
scale - 对于SCALE不适用的数据类型,返回null。 - RADIX短
=>
基数 - NULLABLE short
=>
可以包含NULL。- procedureNoNulls - 不允许NULL值
- procedureNullable - 允许NULL值
- procedureNullableUnknown - 可空性未知
- 备注字符串
=>
描述参数/列的注释 - COLUMN_DEF字符串
=>
列的默认值,当值用单引号括起时,应将其解释为字符串(可能是null
)- 字符串NULL(未用引号括起) - 如果将NULL指定为默认值
- TRUNCATE(未括在引号中) - 如果指定的默认值无法在没有截断的情况下表示
- NULL - 如果未指定默认值
- SQL_DATA_TYPE int
=>
保留供将来使用 - SQL_DATETIME_SUB int
=>
保留供将来使用 - CHAR_OCTET_LENGTH int
=>
二进制和基于字符的列的最大长度。 对于任何其他数据类型,返回的值为NULL - ORDINAL_POSITION int
=>
从1开始的序数位置,用于过程的输入和输出参数。 如果此行描述过程的返回值,则返回值0。 对于结果集列,它是从1开始的结果集中列的序号位置。如果有多个结果集,则列序序位置是实现定义的。 - IS_NULLABLE字符串
=>
ISO规则用于确定列的可为空性。- 是---如果列可以包含NULL
- NO ---如果列不能包含NULL
- 空字符串---如果列的可空性未知
- SPECIFIC_NAME字符串
=>
在其架构中唯一标识此过程的名称。
注意:某些数据库可能不会返回过程的列描述。
PRECISION列表示给定列的指定列大小。 对于数字数据,这是最大精度。 对于字符数据,这是字符长度。 对于datetime数据类型,这是String表示的字符长度(假设小数秒组件的最大允许精度)。 对于二进制数据,这是以字节为单位的长度。 对于ROWID数据类型,这是以字节为单位的长度。 对于列大小不适用的数据类型,将返回Null。
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
procedureNamePattern
- 过程名称模式; 必须匹配存储在数据库中的过程名称 -
columnNamePattern
- 列名模式; 必须匹配列名称,因为它存储在数据库中 - 结果
-
ResultSet
- 每行描述存储过程参数或列 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getSearchStringEscape()
- PROCEDURE_CAT字符串
-
getTables
ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types) throws SQLException
检索给定目录中可用表的描述。 仅返回与目录,架构,表名和类型条件匹配的表描述。 他们被下令TABLE_TYPE
,TABLE_CAT
,TABLE_SCHEM
和TABLE_NAME
。每个表描述都包含以下列:
- TABLE_CAT字符串
=>
表目录(可能是null
) - TABLE_SCHEM字符串
=>
表模式(可以是null
) - TABLE_NAME字符串
=>
表名 - TABLE_TYPE字符串
=>
表类型。 典型的类型是“TABLE”,“VIEW”,“SYSTEM TABLE”,“GLOBAL TEMPORARY”,“LOCAL TEMPORARY”,“ALIAS”,“SYNONYM”。 - 备注字符串
=>
对表的解释性评论(可能是null
) - TYPE_CAT字符串
=>
类型目录(可能是null
) - TYPE_SCHEM字符串
=>
类型架构(可能是null
) - TYPE_NAME字符串
=>
类型名称(可能是null
) - SELF_REFERENCING_COL_NAME字符串
=>
类型表的指定“标识符”列的名称(可能是null
) - REF_GENERATION字符串
=>
指定如何创建SELF_REFERENCING_COL_NAME中的值。 值为“SYSTEM”,“USER”,“DERIVED”。 (可能是null
)
注意:某些数据库可能不会返回所有表的信息。
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
tableNamePattern
- 表名模式; 必须匹配存储在数据库中的表名 -
types
- 表类型列表,必须来自getTableTypes()
返回的表类型列表,包括;null
返回所有类型 - 结果
-
ResultSet
- 每行是一个表格描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getSearchStringEscape()
- TABLE_CAT字符串
-
getSchemas
ResultSet getSchemas() throws SQLException
检索此数据库中可用的模式名称。 结果由TABLE_CATALOG
和TABLE_SCHEM
。架构列是:
- TABLE_SCHEM字符串
=>
模式名称 - TABLE_CATALOG字符串
=>
目录名称(可能是null
)
- 结果
-
ResultSet
对象,其中每一行都是架构描述 - 异常
-
SQLException
- 如果发生数据库访问错误
- TABLE_SCHEM字符串
-
getCatalogs
ResultSet getCatalogs() throws SQLException
检索此数据库中可用的目录名称。 结果按目录名称排序。目录列是:
- TABLE_CAT字符串
=>
目录名称
- 结果
-
一个
ResultSet
对象,其中每一行都有一个作为目录名称的String
列 - 异常
-
SQLException
- 如果发生数据库访问错误
- TABLE_CAT字符串
-
getTableTypes
ResultSet getTableTypes() throws SQLException
检索此数据库中可用的表类型。 结果按表类型排序。表类型是:
- TABLE_TYPE字符串
=>
表类型。 典型的类型是“TABLE”,“VIEW”,“SYSTEM TABLE”,“GLOBAL TEMPORARY”,“LOCAL TEMPORARY”,“ALIAS”,“SYNONYM”。
- 结果
-
ResultSet
对象,其中每一行都有一个表类型为String
列 - 异常
-
SQLException
- 如果发生数据库访问错误
- TABLE_TYPE字符串
-
getColumns
ResultSet getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern) throws SQLException
检索指定目录中可用的表列的描述。仅返回与目录,架构,表和列名称条件匹配的列描述。 他们被下令
TABLE_CAT
,TABLE_SCHEM
,TABLE_NAME
和ORDINAL_POSITION
。每列描述都包含以下列:
- TABLE_CAT字符串
=>
表目录(可能是null
) - TABLE_SCHEM字符串
=>
表模式(可以是null
) - TABLE_NAME字符串
=>
表名 - COLUMN_NAME字符串
=>
列名 - DATA_TYPE int
=>
java.sql.Types中的SQL类型 - TYPE_NAME字符串
=>
数据源相关类型名称,对于UDT,类型名称是完全限定的 - COLUMN_SIZE int
=>
列大小。 - BUFFER_LENGTH未使用。
- DECIMAL_DIGITS int
=>
小数位数。 对于DECIMAL_DIGITS不适用的数据类型,将返回Null。 - NUM_PREC_RADIX int
=>
基数(通常为10或2) - NULLABLE int
=>
允许NULL。- columnNoNulls - 可能不允许
NULL
值 - columnNullable - 绝对允许
NULL
值 - columnNullableUnknown - 可空性未知
- columnNoNulls - 可能不允许
- 备注字符串
=>
评论描述列(可能是null
) - COLUMN_DEF字符串
=>
列的默认值,当值用单引号括起时,应将其解释为字符串(可能是null
) - SQL_DATA_TYPE int
=>
未使用 - SQL_DATETIME_SUB int
=>
未使用 - CHAR_OCTET_LENGTH int
=>
for char类型列中的最大字节数 - ORDINAL_POSITION int
=>
表中列的索引(从1开始) - IS_NULLABLE字符串
=>
ISO规则用于确定列的可为空性。- 是---如果列可以包含NULL
- NO ---如果列不能包含NULL
- 空字符串---如果列的可空性未知
- SCOPE_CATALOG字符串
=>
作为引用属性范围的表的目录(如果DATA_TYPE不是REF,null
) - SCOPE_SCHEMA字符串
=>
作为引用属性范围的表的模式(如果DATA_TYPE不是REF,null
) - SCOPE_TABLE字符串
=>
表名称,这是引用属性的范围(如果DATA_TYPE不是REF,null
) - SOURCE_DATA_TYPE短
=>
不同类型的源类型或用户生成的Ref类型,java.sql.Types中的SQL类型(如果DATA_TYPE不是DISTINCT或用户生成的REF,null
) - IS_AUTOINCREMENT字符串
=>
指示此列是否自动递增- 是---如果列自动递增
- 否---如果列未自动递增
- 空字符串---如果无法确定列是否自动递增
- IS_GENERATEDCOLUMN字符串
=>
指示这是否是生成的列- 是---如果这是一个生成的列
- 否---如果这不是生成的列
- 空字符串---如果无法确定这是否是生成的列
COLUMN_SIZE列指定给定列的列大小。 对于数字数据,这是最大精度。 对于字符数据,这是字符长度。 对于datetime数据类型,这是String表示的字符长度(假设小数秒组件的最大允许精度)。 对于二进制数据,这是以字节为单位的长度。 对于ROWID数据类型,这是以字节为单位的长度。 对于列大小不适用的数据类型,将返回Null。
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
tableNamePattern
- 表名模式; 必须匹配存储在数据库中的表名 -
columnNamePattern
- 列名模式; 必须匹配列名称,因为它存储在数据库中 - 结果
-
ResultSet
- 每行都是列描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getSearchStringEscape()
- TABLE_CAT字符串
-
getColumnPrivileges
ResultSet getColumnPrivileges(String catalog, String schema, String table, String columnNamePattern) throws SQLException
检索表列的访问权限的描述。仅返回与列名称条件匹配的权限。 它们由COLUMN_NAME和PRIVILEGE订购。
每个权限描述都包含以下列:
- TABLE_CAT字符串
=>
表目录(可能是null
) - TABLE_SCHEM字符串
=>
表模式(可以是null
) - TABLE_NAME字符串
=>
表名 - COLUMN_NAME字符串
=>
列名 - GRANTOR字符串
=>
访问授权人(可能是null
) - GRANTEE String
=>
访问受让人 - PRIVILEGE字符串
=>
访问名称(SELECT,INSERT,UPDATE,REFERENCES,...) - IS_GRANTABLE字符串
=>
如果允许受让人授予他人,=>
“是”; 如果不是“不”;null
若不明数
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schema
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
table
- 表名; 必须匹配存储在数据库中的表名 -
columnNamePattern
- 列名模式; 必须匹配列名称,因为它存储在数据库中 - 结果
-
ResultSet
- 每行都是列权限描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getSearchStringEscape()
- TABLE_CAT字符串
-
getTablePrivileges
ResultSet getTablePrivileges(String catalog, String schemaPattern, String tableNamePattern) throws SQLException
检索目录中可用的每个表的访问权限的描述。 请注意,表权限适用于表中的一个或多个列。 假设这个特权适用于所有列是错误的(对于某些系统可能是这样,但对所有系统都不是这样)。仅返回与架构和表名称条件匹配的权限。 他们被下令
TABLE_CAT
,TABLE_SCHEM
,TABLE_NAME
和PRIVILEGE
。每个权限描述都包含以下列:
- TABLE_CAT字符串
=>
表目录(可能是null
) - TABLE_SCHEM字符串
=>
表模式(可以是null
) - TABLE_NAME字符串
=>
表名 - GRANTOR字符串
=>
访问授权人(可能是null
) - GRANTEE String
=>
访问受让人 - PRIVILEGE字符串
=>
访问名称(SELECT,INSERT,UPDATE,REFERENCES,...) - IS_GRANTABLE字符串
=>
如果允许受让人授予他人,=>
“是”; 如果不是“不”;null
若不明
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
tableNamePattern
- 表名模式; 必须匹配存储在数据库中的表名 - 结果
-
ResultSet
- 每行都是表权限描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getSearchStringEscape()
- TABLE_CAT字符串
-
getBestRowIdentifier
ResultSet getBestRowIdentifier(String catalog, String schema, String table, int scope, boolean nullable) throws SQLException
检索表的唯一标识行的最佳列集的描述。 它们由SCOPE订购。每列描述都包含以下列:
- SCOPE短
=>
实际结果范围- bestRowTemporary - 非常临时,同时使用行
- bestRowTransaction - 对当前事务的剩余部分有效
- bestRowSession - 对当前会话的剩余部分有效
- COLUMN_NAME字符串
=>
列名 - DATA_TYPE int
=>
来自java.sql.Types的SQL数据类型 - TYPE_NAME字符串
=>
数据源相关类型名称,对于UDT,类型名称是完全限定的 - COLUMN_SIZE int
=>
精度 - BUFFER_LENGTH int
=>
未使用 - DECIMAL_DIGITS short
=>
scale - 对于DECIMAL_DIGITS不适用的数据类型,返回Null。 - PSEUDO_COLUMN short
=>
这是一个类似Oracle ROWID的伪列- bestRowUnknown - 可能是也可能不是伪列
- bestRowNotPseudo - 不是伪列
- bestRowPseudo - 是一个伪列
COLUMN_SIZE列表示给定列的指定列大小。 对于数字数据,这是最大精度。 对于字符数据,这是字符长度。 对于datetime数据类型,这是String表示的字符长度(假设小数秒组件的最大允许精度)。 对于二进制数据,这是以字节为单位的长度。 对于ROWID数据类型,这是以字节为单位的长度。 对于列大小不适用的数据类型,将返回Null。
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schema
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
table
- 表名; 必须匹配存储在数据库中的表名 -
scope
- 利益范围; 使用与SCOPE相同的值 -
nullable
- 包含可为空的列。 - 结果
-
ResultSet
- 每行都是列描述 - 异常
-
SQLException
- 如果发生数据库访问错误
- SCOPE短
-
getVersionColumns
ResultSet getVersionColumns(String catalog, String schema, String table) throws SQLException
检索在更新行中的任何值时自动更新的表列的描述。 它们是无序的。每列描述都包含以下列:
- 没有使用SCOPE short
=>
- COLUMN_NAME字符串
=>
列名称 - DATA_TYPE int
=>
SQL数据类型来自java.sql.Types
- TYPE_NAME字符串
=>
数据源相关的类型名称 - COLUMN_SIZE int
=>
精度 - BUFFER_LENGTH int
=>
列的长度值,以字节为单位 - DECIMAL_DIGITS short
=>
scale - 对于DECIMAL_DIGITS不适用的数据类型,返回Null。 - PSEUDO_COLUMN短
=>
这是否是像Oracle ROWID那样的伪列- versionColumnUnknown - 可能是也可能不是伪列
- versionColumnNotPseudo - 不是伪列
- versionColumnPseudo - 是一个伪列
COLUMN_SIZE列表示给定列的指定列大小。 对于数字数据,这是最大精度。 对于字符数据,这是字符长度。 对于datetime数据类型,这是String表示的字符长度(假设小数秒组件的最大允许精度)。 对于二进制数据,这是以字节为单位的长度。 对于ROWID数据类型,这是以字节为单位的长度。 对于列大小不适用的数据类型,将返回Null。
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schema
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
table
- 表名; 必须匹配存储在数据库中的表名 - 结果
-
ResultSet
对象,其中每一行都是列描述 - 异常
-
SQLException
- 如果发生数据库访问错误
- 没有使用SCOPE short
-
getPrimaryKeys
ResultSet getPrimaryKeys(String catalog, String schema, String table) throws SQLException
检索给定表的主键列的描述。 它们由COLUMN_NAME订购。每个主键列描述都包含以下列:
- TABLE_CAT字符串
=>
表目录(可能是null
) - TABLE_SCHEM字符串
=>
表模式(可以是null
) - TABLE_NAME字符串
=>
表名 - COLUMN_NAME字符串
=>
列名 - KEY_SEQ短
=>
序列号内的主键(值1表示主密钥中的第一列,值2将代表主键中的第二列)。 - PK_NAME字符串
=>
主键名称(可能是null
)
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schema
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
table
- 表名; 必须匹配存储在数据库中的表名 - 结果
-
ResultSet
- 每行是主键列描述 - 异常
-
SQLException
- 如果发生数据库访问错误
- TABLE_CAT字符串
-
getImportedKeys
ResultSet getImportedKeys(String catalog, String schema, String table) throws SQLException
检索给定表的外键列(由表导入的主键)引用的主键列的描述。 它们由PKTABLE_CAT,PKTABLE_SCHEM,PKTABLE_NAME和KEY_SEQ排序。每个主键列描述都包含以下列:
- PKTABLE_CAT字符串
=>
正在导入主键表目录(可能是null
) - PKTABLE_SCHEM字符串
=>
正在导入主键表模式(可能是null
) - PKTABLE_NAME字符串
=>
正在导入主键表名称 - PKCOLUMN_NAME字符串
=>
正在导入的主键列名称 - FKTABLE_CAT字符串
=>
外键表目录(可能是null
) - FKTABLE_SCHEM字符串
=>
外键表架构(可能是null
) - FKTABLE_NAME字符串
=>
外键表名 - FKCOLUMN_NAME字符串
=>
外键列名称 - KEY_SEQ短
=>
外键内的序列号(值1表示外键的第一列中,值2将代表外键内的第二列)。 - UPDATE_RULE short
=>
更新主键时外键会发生什么情况:- importedNoAction - 如果已导入主键,则不允许更新主键
- importedKeyCascade - 更改导入的密钥以同意主键更新
- importedKeySetNull - 如果已更新主键,
NULL
导入的密钥更改为NULL
- importedKeySetDefault - 如果已更新主键,则将导入的键更改为默认值
- importedKeyRestrict - 与importedKeyNoAction相同(用于ODBC 2.x兼容性)
- DELETE_RULE short
=>
删除primary时外键会发生什么情况。- importedKeyNoAction - 如果已导入主键,则不允许删除主键
- importedKeyCascade - 删除导入已删除密钥的行
- importedKeySetNull - 如果已删除主键,则将导入的密钥更改为NULL
- importedKeyRestrict - 与importedKeyNoAction相同(用于ODBC 2.x兼容性)
- importedKeySetDefault - 如果已删除主键,则将导入的密钥更改为默认值
- FK_NAME字符串
=>
外键名称(可能是null
) - PK_NAME字符串
=>
主键名称(可能是null
) - DEFERRABILITY short
=>
可以将外键约束的评估推迟到提交之前- importedKeyInitiallyDeferred - 有关定义,请参阅SQL92
- importedKeyInitiallyImmediate - 有关定义,请参阅SQL92
- importedKeyNotDeferrable - 有关定义,请参阅SQL92
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schema
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
table
- 表名; 必须匹配存储在数据库中的表名 - 结果
-
ResultSet
- 每行是主键列描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getExportedKeys(java.lang.String, java.lang.String, java.lang.String)
- PKTABLE_CAT字符串
-
getExportedKeys
ResultSet getExportedKeys(String catalog, String schema, String table) throws SQLException
检索引用给定表的主键列(由表导出的外键)的外键列的描述。 它们按FKTABLE_CAT,FKTABLE_SCHEM,FKTABLE_NAME和KEY_SEQ排序。每个外键列描述都包含以下列:
- PKTABLE_CAT字符串
=>
主键表目录(可能是null
) - PKTABLE_SCHEM字符串
=>
主键表架构(可能是null
) - PKTABLE_NAME字符串
=>
主键表名称 - PKCOLUMN_NAME字符串
=>
主键列名称 - FKTABLE_CAT字符串
=>
正在导出的外键表目录(可能是null
)(可能是null
) - FKTABLE_SCHEM字符串
=>
正在导出的外键表架构(可能是null
)(可能是null
) - FKTABLE_NAME字符串
=>
正在导出外键表名称 - FKCOLUMN_NAME字符串
=>
正在导出的外键列名称 - KEY_SEQ短
=>
序列号内的外键(值1表示外键的第一列中,值2将代表外键内的第二列)。 - UPDATE_RULE short
=>
更新主=>
时外键会发生什么情况:- importedNoAction - 如果已导入主键,则不允许更新主键
- importedKeyCascade - 更改导入的密钥以同意主键更新
- importedKeySetNull - 如果主键已更新,
NULL
导入的密钥更改为NULL
- importedKeySetDefault - 如果已更新主键,则将导入的键更改为默认值
- importedKeyRestrict - 与importedKeyNoAction相同(用于ODBC 2.x兼容性)
- DELETE_RULE short
=>
删除primary时外键会发生什么情况。- importedKeyNoAction - 如果已导入主键,则不允许删除主键
- importedKeyCascade - 删除导入已删除密钥的行
- importedKeySetNull - 如果已删除主键,
NULL
导入的密钥更改为NULL
- importedKeyRestrict - 与importedKeyNoAction相同(用于ODBC 2.x兼容性)
- importedKeySetDefault - 如果已删除主键,则将导入的密钥更改为默认值
- FK_NAME字符串
=>
外键名称(可能是null
) - PK_NAME字符串
=>
主键名称(可能是null
) - DEFERRABILITY short
=>
可以将外键约束的评估推迟到提交之前- importedKeyInitiallyDeferred - 有关定义,请参阅SQL92
- importedKeyInitiallyImmediate - 有关定义,请参阅SQL92
- importedKeyNotDeferrable - 有关定义,请参阅SQL92
- 参数
-
catalog
- 目录名称; 必须匹配存储在此数据库中的目录名称; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schema
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
table
- 表名; 必须匹配存储在此数据库中的表名 - 结果
-
ResultSet
对象,其中每一行都是外键列描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getImportedKeys(java.lang.String, java.lang.String, java.lang.String)
- PKTABLE_CAT字符串
-
getCrossReference
ResultSet getCrossReference(String parentCatalog, String parentSchema, String parentTable, String foreignCatalog, String foreignSchema, String foreignTable) throws SQLException
检索给定外键表中引用主键的外键列的描述或表示父表的唯一约束的列(可以是相同或不同的表)。 从父表返回的列数必须与组成外键的列数相匹配。 它们按FKTABLE_CAT,FKTABLE_SCHEM,FKTABLE_NAME和KEY_SEQ排序。每个外键列描述都包含以下列:
- PKTABLE_CAT字符串
=>
父键表目录(可能是null
) - PKTABLE_SCHEM字符串
=>
父键表架构(可能是null
) - PKTABLE_NAME字符串
=>
父键表名称 - PKCOLUMN_NAME字符串
=>
父键列名称 - FKTABLE_CAT字符串
=>
正在导出的外键表目录(可能是null
)(可能是null
) - FKTABLE_SCHEM字符串
=>
正在导出的外键表架构(可能是null
)(可能是null
) - FKTABLE_NAME字符串
=>
正在导出的外键表名称 - FKCOLUMN_NAME字符串
=>
正在导出的外键列名称 - KEY_SEQ短
=>
序列号内的外键(值1表示外键的第一列中,值2将代表外键内的第二列)。 - UPDATE_RULE short
=>
更新父键时外键会发生什么:- importedNoAction - 如果已导入父键,则不允许更新父键
- importedKeyCascade - 更改导入的密钥以同意父密钥更新
- importedKeySetNull - 如果已更新其父键,
NULL
导入的密钥更改为NULL
- importedKeySetDefault - 如果已更新其父键,则将导入的键更改为默认值
- importedKeyRestrict - 与importedKeyNoAction相同(用于ODBC 2.x兼容性)
- DELETE_RULE short
=>
删除父键时外键会发生什么。- importedKeyNoAction - 如果已导入父键,则不允许删除父键
- importedKeyCascade - 删除导入已删除密钥的行
- importedKeySetNull - 如果已删除主键,
NULL
导入的密钥更改为NULL
- importedKeyRestrict - 与importedKeyNoAction相同(用于ODBC 2.x兼容性)
- importedKeySetDefault - 如果已删除其父键,则将导入的密钥更改为默认值
- FK_NAME字符串
=>
外键名称(可能是null
) - PK_NAME字符串
=>
父键名称(可能是null
) - DEFERRABILITY short
=>
可以将外键约束的评估推迟到提交之前- importedKeyInitiallyDeferred - 有关定义,请参阅SQL92
- importedKeyInitiallyImmediate - 有关定义,请参阅SQL92
- importedKeyNotDeferrable - 有关定义,请参阅SQL92
- 参数
-
parentCatalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示从选择条件中删除目录名称 -
parentSchema
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示从选择条件中删除模式名称 -
parentTable
- 导出密钥的表的名称; 必须匹配存储在数据库中的表名 -
foreignCatalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示从选择条件中删除目录名称 -
foreignSchema
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示从选择条件中删除模式名称 -
foreignTable
- 导入密钥的表的名称; 必须匹配存储在数据库中的表名 - 结果
-
ResultSet
- 每行都是外键列描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 另请参见:
-
getImportedKeys(java.lang.String, java.lang.String, java.lang.String)
- PKTABLE_CAT字符串
-
getTypeInfo
ResultSet getTypeInfo() throws SQLException
检索此数据库支持的所有数据类型的描述。 它们按DATA_TYPE排序,然后按数据类型映射到相应JDBC SQL类型的紧密程度排序。如果数据库支持SQL distinct类型,则getTypeInfo()将返回一行,其中TYPE_NAME为DISTINCT,DATA_TYPE为Types.DISTINCT。 如果数据库支持SQL结构化类型,则getTypeInfo()将返回一行,其中TYPE_NAME为STRUCT,DATA_TYPE为Types.STRUCT。
如果支持SQL distinct或结构化类型,则可以从getUDTs()方法获取有关各个类型的信息。
每种类型描述都包含以下列:
- TYPE_NAME字符串
=>
类型名称 - DATA_TYPE int
=>
来自java.sql.Types的SQL数据类型 - PRECISION int
=>
最高精度 - LITERAL_PREFIX字符串
=>
用于引用文字的前缀(可能是null
) - LITERAL_SUFFIX字符串
=>
后缀用于引用文字(可能是null
) - CREATE_PARAMS字符串
=>
用于创建类型的参数(可能是null
) - NULLABLE short
=>
可以为此类型使用NULL。- typeNoNulls - 不允许NULL值
- typeNullable - 允许NULL值
- typeNullableUnknown - 可空性未知
- CASE_SENSITIVE布尔值
=>
区分大小写。 - SEARCHABLE短
=>
你可以根据这个类型使用“WHERE”:- typePredNone - 没有支持
- typePredChar - 仅支持WHERE .. LIKE
- typePredBasic - 除WHERE以外支持.. LIKE
- typeSearchable - 支持所有WHERE ..
- UNSIGNED_ATTRIBUTE布尔值
=>
是无符号的。 - FIXED_PREC_SCALE布尔值
=>
可以是货币价值。 - AUTO_INCREMENT布尔值
=>
可以用于自动递增值。 - LOCAL_TYPE_NAME字符串
=>
类型名称的本地化版本(可能是null
) - MINIMUM_SCALE短
=>
支持最低比例 - 最大支持MAXIMUM_SCALE短
=>
- SQL_DATA_TYPE int
=>
未使用 - SQL_DATETIME_SUB int
=>
未使用 - NUM_PREC_RADIX int
=>
通常为2或10
PRECISION列表示服务器支持给定数据类型的最大列大小。 对于数字数据,这是最大精度。 对于字符数据,这是字符长度。 对于datetime数据类型,这是String表示的字符长度(假设小数秒组件的最大允许精度)。 对于二进制数据,这是以字节为单位的长度。 对于ROWID数据类型,这是以字节为单位的长度。 对于列大小不适用的数据类型,将返回Null。
- 结果
-
ResultSet
对象,其中每一行都是SQL类型描述 - 异常
-
SQLException
- 如果发生数据库访问错误
- TYPE_NAME字符串
-
getIndexInfo
ResultSet getIndexInfo(String catalog, String schema, String table, boolean unique, boolean approximate) throws SQLException
检索给定表的索引和统计信息的描述。 它们按NON_UNIQUE,TYPE,INDEX_NAME和ORDINAL_POSITION排序。每个索引列描述都包含以下列:
- TABLE_CAT字符串
=>
表目录(可能是null
) - TABLE_SCHEM字符串
=>
表模式(可以是null
) - TABLE_NAME字符串
=>
表名 - NON_UNIQUE boolean
=>
索引值可以是非唯一的。 当TYPE是tableIndexStatistic时为false - INDEX_QUALIFIER字符串
=>
索引目录(可能是null
); 当TYPE是tableIndexStatistic时为null
- INDEX_NAME字符串
=>
索引名称; 当TYPE是tableIndexStatistic时为null
- TYPE短
=>
索引类型:- tableIndexStatistic - 它标识与表的索引描述一起返回的表统计信息
- tableIndexClustered - 这是一个聚簇索引
- tableIndexHashed - 这是一个散列索引
- tableIndexOther - 这是其他一些索引样式
- ORDINAL_POSITION短
=>
索引中的列序列号; TYPE为tableIndexStatistic时为零 - COLUMN_NAME字符串
=>
列名; 当TYPE是tableIndexStatistic时为null
- ASC_OR_DESC字符串
=>
列排序顺序,“A”=>
升序,“D”=>
降序,如果不支持排序顺序,则可以是null
; 当TYPE是tableIndexStatistic时为null
- CARDINALITY long
=>
当TYPE为tableIndexStatistic时,则这是表中的行数; 否则,它是索引中唯一值的数量。 - PAGES long
=>
当TYPE是tableIndexStatistic时,这是用于表的页数,否则它是用于当前索引的页数。 - FILTER_CONDITION字符串
=>
过滤条件(如果有)。 (可能是null
)
- 参数
-
catalog
- 目录名称; 必须匹配存储在此数据库中的目录名称; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schema
- 模式名称; 必须匹配模式名称,因为它存储在此数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
table
- 表名; 必须匹配存储在此数据库中的表名 -
unique
- 如果为true,则仅返回唯一值的索引; 如果为false,则返回索引,无论是否唯一 -
approximate
- 如果为true,则允许结果反映近似值或超出数据值; 如果为false,则要求结果准确 - 结果
-
ResultSet
- 每行都是索引列描述 - 异常
-
SQLException
- 如果发生数据库访问错误
- TABLE_CAT字符串
-
supportsResultSetType
boolean supportsResultSetType(int type) throws SQLException
检索此数据库是否支持给定的结果集类型。- 参数
-
type
- 在java.sql.ResultSet
定义 - 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
- 另请参见:
-
Connection
-
supportsResultSetConcurrency
boolean supportsResultSetConcurrency(int type, int concurrency) throws SQLException
检索此数据库是否支持给定的并发类型以及给定的结果集类型。- 参数
-
type
- 在java.sql.ResultSet
定义 -
concurrency
- 在java.sql.ResultSet
定义的java.sql.ResultSet
- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
- 另请参见:
-
Connection
-
ownUpdatesAreVisible
boolean ownUpdatesAreVisible(int type) throws SQLException
检索是否对于给定类型的ResultSet
对象,结果集自己的更新是可见的。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果给定结果集类型的更新可见; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
ownDeletesAreVisible
boolean ownDeletesAreVisible(int type) throws SQLException
检索结果集自己的删除是否可见。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果给定结果集类型的删除是可见的; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
ownInsertsAreVisible
boolean ownInsertsAreVisible(int type) throws SQLException
检索结果集自己的插入是否可见。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果插入对于给定的结果集类型可见; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
othersUpdatesAreVisible
boolean othersUpdatesAreVisible(int type) throws SQLException
检索其他人所做的更新是否可见。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果其他人所做的更新对于给定的结果集类型是可见的; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
othersDeletesAreVisible
boolean othersDeletesAreVisible(int type) throws SQLException
检索其他人删除是否可见。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果其他人做出的删除对于给定的结果集类型是可见的; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
othersInsertsAreVisible
boolean othersInsertsAreVisible(int type) throws SQLException
检索其他人创建的插入是否可见。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果其他人的插入对于给定的结果集类型是可见的; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
updatesAreDetected
boolean updatesAreDetected(int type) throws SQLException
通过调用方法ResultSet.rowUpdated
检索是否可以检测到可见行更新。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果结果集类型检测到更改; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
deletesAreDetected
boolean deletesAreDetected(int type) throws SQLException
通过调用方法ResultSet.rowDeleted
检索是否可以检测到可见行删除。 如果方法deletesAreDetected
返回false
,则表示从结果集中删除已删除的行。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果给定的结果集类型检测到删除; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
insertsAreDetected
boolean insertsAreDetected(int type) throws SQLException
通过调用方法ResultSet.rowInserted
检索是否可以检测到可见行插入。- 参数
-
type
-ResultSet
类型; 之一ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,或ResultSet.TYPE_SCROLL_SENSITIVE
- 结果
-
true
如果指定的结果集类型检测到更改; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
supportsBatchUpdates
boolean supportsBatchUpdates() throws SQLException
检索此数据库是否支持批量更新。- 结果
-
true
如果此数据库支持批量更新; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
getUDTs
ResultSet getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types) throws SQLException
检索特定模式中定义的用户定义类型(UDT)的描述。 架构特定的UDT可具有类型JAVA_OBJECT
,STRUCT
,或DISTINCT
。仅返回与目录,架构,类型名称和类型条件匹配的类型。 他们被下令
DATA_TYPE
,TYPE_CAT
,TYPE_SCHEM
和TYPE_NAME
。 类型名称参数可以是完全限定名称。 在这种情况下,将忽略catalog和schemaPattern参数。每种类型描述都包含以下列:
- TYPE_CAT字符串
=>
该类型的目录(可能是null
) - TYPE_SCHEM字符串
=>
类型的架构(可能是null
) - TYPE_NAME字符串
=>
类型名称 - CLASS_NAME字符串
=>
Java类名称 - DATA_TYPE int
=>
在java.sql.Types中定义的类型值。 JAVA_OBJECT,STRUCT或DISTINCT之一 - 备注字符串
=>
对类型的解释性注释 - BASE_TYPE short
=>
DISTINCT类型的源类型的类型代码,或实现java.sql.Types中定义的结构化类型的SELF_REFERENCING_COLUMN的用户生成引用类型的类型(如果DATA_TYPE不是DISTINCT,null
,不带STRUCT, REFERENCE_GENERATION = USER_DEFINED)
注意:如果驱动程序不支持UDT,则返回空结果集。
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式模式名称; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
typeNamePattern
- 类型名称模式; 必须匹配存储在数据库中的类型名称; 可能是一个完全限定的名称 -
types
- 要包括的用户定义类型(JAVA_OBJECT,STRUCT或DISTINCT)的列表;null
返回所有类型 - 结果
-
ResultSet
每个行描述UDT的对象 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
- 另请参见:
-
getSearchStringEscape()
- TYPE_CAT字符串
-
getConnection
Connection getConnection() throws SQLException
检索生成此元数据对象的连接。- 结果
- 生成此元数据对象的连接
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.2
-
supportsSavepoints
boolean supportsSavepoints() throws SQLException
检索此数据库是否支持保存点。- 结果
-
true
如果支持保存点; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
supportsNamedParameters
boolean supportsNamedParameters() throws SQLException
检索此数据库是否支持可调用语句的命名参数。- 结果
-
true
如果支持命名参数; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
supportsMultipleOpenResults
boolean supportsMultipleOpenResults() throws SQLException
检索是否有可能具有多个ResultSet
从返回的对象CallableStatement
对象同时进行。- 结果
-
true
如果CallableStatement
对象可以同时返回多个ResultSet
对象; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
supportsGetGeneratedKeys
boolean supportsGetGeneratedKeys() throws SQLException
检索在执行语句后是否可以检索自动生成的键- 结果
-
true
如果在执行语句后可以检索自动生成的键; 否则为false
如果返回
true
,则JDBC驱动程序必须支持至少为SQL INSERT语句返回自动生成的键 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
getSuperTypes
ResultSet getSuperTypes(String catalog, String schemaPattern, String typeNamePattern) throws SQLException
检索此数据库中特定模式中定义的用户定义类型(UDT)层次结构的描述。 仅建立立即超类型/子类型关系。仅返回与目录,架构和类型名称匹配的UDT的超类型信息。 类型名称参数可以是完全限定名称。 提供的UDT名称是完全限定名称时,将忽略catalog和schemaPattern参数。
如果UDT没有直接超类型,则此处未列出。 此方法返回的
ResultSet
对象的一行描述了指定的UDT和直接超类型。 一行包含以下列:- TYPE_CAT字符串
=>
UDT的目录(可能是null
) - TYPE_SCHEM字符串
=>
UDT的架构(可能是null
) - TYPE_NAME字符串
=>
UDT的类型名称 - SUPERTYPE_CAT字符串
=>
直接超级类型的目录(可能是null
) - SUPERTYPE_SCHEM字符串
=>
直接超类型的架构(可能是null
) - SUPERTYPE_NAME字符串
=>
直接超级类型的名称
注意:如果驱动程序不支持类型层次结构,则返回空结果集。
- 参数
-
catalog
- 目录名称; “”检索那些没有目录的人;null
表示从选择条件中删除目录名称 -
schemaPattern
- 模式名称模式; “”检索没有架构的那些 -
typeNamePattern
- UDT名称模式; 可能是一个完全限定的名称 - 结果
-
一个
ResultSet
对象,其中一行提供有关指定UDT的信息 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
- 另请参见:
-
getSearchStringEscape()
- TYPE_CAT字符串
-
getSuperTables
ResultSet getSuperTables(String catalog, String schemaPattern, String tableNamePattern) throws SQLException
检索此数据库中特定模式中定义的表层次结构的描述。仅返回与目录,模式和表名匹配的表的超级信息。 表名参数可以是完全限定名,在这种情况下,将忽略catalog和schemaPattern参数。 如果表没有超级表,则此处未列出。 必须在与子表相同的目录和模式中定义Supertable。 因此,类型描述不需要包含超级表的此信息。
每种类型描述都包含以下列:
- TABLE_CAT字符串
=>
类型的目录(可能是null
) - TABLE_SCHEM字符串
=>
类型的模式(可为null
) - TABLE_NAME字符串
=>
类型名称 - SUPERTABLE_NAME字符串
=>
直接超级类型的名称
注意:如果驱动程序不支持类型层次结构,则返回空结果集。
- 参数
-
catalog
- 目录名称; “”检索那些没有目录的人;null
表示从选择条件中删除目录名称 -
schemaPattern
- 模式名称模式; “”检索没有架构的那些 -
tableNamePattern
- 表名模式; 可能是一个完全限定的名称 - 结果
-
ResultSet
对象,其中每一行都是类型描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
- 另请参见:
-
getSearchStringEscape()
- TABLE_CAT字符串
-
getAttributes
ResultSet getAttributes(String catalog, String schemaPattern, String typeNamePattern, String attributeNamePattern) throws SQLException
检索给定模式和目录中可用的用户定义类型(UDT)的给定类型的给定属性的描述。仅针对与目录,架构,类型和属性名称条件匹配的UDT的属性返回描述。 他们被下令
TYPE_CAT
,TYPE_SCHEM
,TYPE_NAME
和ORDINAL_POSITION
。 此描述不包含继承的属性。返回的
ResultSet
对象具有以下列:- TYPE_CAT字符串
=>
类型目录(可能是null
) - TYPE_SCHEM字符串
=>
类型架构(可能是null
) - TYPE_NAME字符串
=>
类型名称 - ATTR_NAME字符串
=>
属性名称 - DATA_TYPE int
=>
属性类型来自java.sql.Types的SQL类型 - ATTR_TYPE_NAME字符串
=>
数据源相关类型名称。 对于UDT,类型名称是完全限定的。 对于REF,类型名称是完全限定的,表示引用类型的目标类型。 - ATTR_SIZE int
=>
列大小。 对于char或日期类型,这是最大字符数; 对于数字或小数类型,这是精度。 - DECIMAL_DIGITS int
=>
小数位数。 对于DECIMAL_DIGITS不适用的数据类型,将返回Null。 - NUM_PREC_RADIX int
=>
基数(通常为10或2) - NULLABLE int
=>
是否允许NULL- attributeNoNulls - 可能不允许NULL值
- attributeNullable - 肯定允许NULL值
- attributeNullableUnknown - 可空性未知
- 备注字符串
=>
描述列的评论(可能是null
) - ATTR_DEF字符串
=>
默认值(可能是null
) - SQL_DATA_TYPE int
=>
未使用 - SQL_DATETIME_SUB int
=>
未使用 - CHAR_OCTET_LENGTH int
=>
for char类型列中的最大字节数 - ORDINAL_POSITION int
=>
UDT中属性的索引(从1开始) - IS_NULLABLE字符串
=>
ISO规则用于确定属性的可为空性。- 是---如果属性可以包含NULL
- NO ---如果属性不能包含NULL
- 空字符串---如果属性的可空性未知
- SCOPE_CATALOG字符串
=>
作为引用属性范围的表的目录(如果DATA_TYPE不是REF,null
) - SCOPE_SCHEMA字符串
=>
作为引用属性范围的表的模式(如果DATA_TYPE不是REF,null
) - SCOPE_TABLE字符串
=>
表名称是引用属性的范围(如果DATA_TYPE不是REF,null
) - SOURCE_DATA_TYPE short
=>
不同类型的源类型或用户生成的Ref类型,java.sql.Types中的SQL类型(如果DATA_TYPE不是DISTINCT或用户生成的REF,null
)
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
typeNamePattern
- 类型名称模式; 必须匹配存储在数据库中的类型名称 -
attributeNamePattern
- 属性名称模式; 必须匹配在数据库中声明的属性名称 - 结果
-
ResultSet
对象,其中每一行都是属性描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
- 另请参见:
-
getSearchStringEscape()
- TYPE_CAT字符串
-
supportsResultSetHoldability
boolean supportsResultSetHoldability(int holdability) throws SQLException
检索此数据库是否支持给定的结果集可保持性。- 参数
-
holdability
- 以下常量之一:ResultSet.HOLD_CURSORS_OVER_COMMIT
或ResultSet.CLOSE_CURSORS_AT_COMMIT
- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
- 另请参见:
-
Connection
-
getResultSetHoldability
int getResultSetHoldability() throws SQLException
检索此数据库的ResultSet
对象的默认可保存性。- 结果
-
默认可保持性;
ResultSet.HOLD_CURSORS_OVER_COMMIT
或ResultSet.CLOSE_CURSORS_AT_COMMIT
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
getDatabaseMajorVersion
int getDatabaseMajorVersion() throws SQLException
检索基础数据库的主版本号。- 结果
- 底层数据库的主要版本
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
getDatabaseMinorVersion
int getDatabaseMinorVersion() throws SQLException
检索基础数据库的次要版本号。- 结果
- 底层数据库的次要版本
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
getJDBCMajorVersion
int getJDBCMajorVersion() throws SQLException
检索此驱动程序的主要JDBC版本号。- 结果
- JDBC版本的主要编号
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
getJDBCMinorVersion
int getJDBCMinorVersion() throws SQLException
检索此驱动程序的次要JDBC版本号。- 结果
- JDBC版本次要编号
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
getSQLStateType
int getSQLStateType() throws SQLException
指示SQLException.getSQLState
返回的SQLSTATE是X / Open(现在称为Open Group)SQL CLI还是SQL:2003。- 结果
- SQLSTATE的类型; 之一:sqlStateXOpen或sqlStateSQL
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
locatorsUpdateCopy
boolean locatorsUpdateCopy() throws SQLException
指示对LOB进行的更新是在副本上进行还是直接对LOB进行。- 结果
-
true
如果对LOB的副本进行了更新;false
如果直接对LOB进行更新 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
supportsStatementPooling
boolean supportsStatementPooling() throws SQLException
检索此数据库是否支持语句池。- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.4
-
getRowIdLifetime
RowIdLifetime getRowIdLifetime() throws SQLException
指示此数据源是否支持SQLROWID
类型,以及RowId
对象保持有效的生存期。- 结果
-
指示
RowId
的生命周期的状态 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.6
-
getSchemas
ResultSet getSchemas(String catalog, String schemaPattern) throws SQLException
检索此数据库中可用的模式名称。 结果由TABLE_CATALOG
和TABLE_SCHEM
。架构列是:
- TABLE_SCHEM字符串
=>
模式名称 - TABLE_CATALOG字符串
=>
目录名称(可能是null
)
- 参数
-
catalog
- 目录名称; 必须匹配存储在数据库中的目录名称;“”检索没有目录的目录名称; null表示不应使用目录名称来缩小搜索范围。 -
schemaPattern
- 模式名称; 必须匹配模式名称,因为它存储在数据库中; null表示不应使用模式名称来缩小搜索范围。 - 结果
-
ResultSet
对象,其中每一行都是架构描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.6
- 另请参见:
-
getSearchStringEscape()
- TABLE_SCHEM字符串
-
supportsStoredFunctionsUsingCallSyntax
boolean supportsStoredFunctionsUsingCallSyntax() throws SQLException
检索此数据库是否支持使用存储过程转义语法调用用户定义的函数或供应商函数。- 结果
-
true
如果是的话; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.6
-
autoCommitFailureClosesAllResultSets
boolean autoCommitFailureClosesAllResultSets() throws SQLException
检索SQLException
而autoCommit是否为true
表示所有打开的ResultSet都已关闭,即使是可保留的。 当autocommit为SQLException
时发生true
,JDBC驱动程序是使用提交操作,回滚操作还是既不执行提交也不执行回滚来响应供应商。 这种差异的潜在结果在于是否关闭了可保留的ResultSet。- 结果
-
true
若是; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.6
-
getClientInfoProperties
ResultSet getClientInfoProperties() throws SQLException
检索驱动程序支持的客户端信息属性的列表。 结果集包含以下列- NAME String
=>
客户端信息属性的名称 - MAX_LEN int
=>
属性值的最大长度 - DEFAULT_VALUE字符串
=>
属性的默认值 - 描述字符串
=>
属性的描述。 这通常包含有关此属性在数据库中的存储位置的信息。
ResultSet
按NAME列排序- 结果
-
A
ResultSet
对象; 每行都是受支持的客户端信息属性 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.6
- NAME String
-
getFunctions
ResultSet getFunctions(String catalog, String schemaPattern, String functionNamePattern) throws SQLException
检索给定目录中可用的系统和用户功能的描述。仅返回与模式和函数名称条件匹配的系统和用户功能描述。 他们被下令
FUNCTION_CAT
,FUNCTION_SCHEM
,FUNCTION_NAME
和SPECIFIC_ NAME
。每个函数描述都包含以下列:
- FUNCTION_CAT字符串
=>
功能目录(可能是null
) - FUNCTION_SCHEM字符串
=>
函数模式(可能是null
) - FUNCTION_NAME字符串
=>
函数名称。 这是用于调用该函数的名称 - 备注字符串
=>
关于功能的说明性注释 - FUNCTION_TYPE短
=>
种功能:- functionResultUnknown - 无法确定是否返回返回值或表
- functionNoTable-不返回表
- functionReturnsTable - 返回一个表
- SPECIFIC_NAME字符串
=>
在其架构中唯一标识此函数的名称。 这是用户指定的或DBMS生成的名称,可能与FUNCTION_NAME
不同,例如具有过载功能
用户可能无权执行
getFunctions
返回的任何功能- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
functionNamePattern
- 函数名称模式; 必须匹配存储在数据库中的函数名称 - 结果
-
ResultSet
- 每行是一个功能描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.6
- 另请参见:
-
getSearchStringEscape()
- FUNCTION_CAT字符串
-
getFunctionColumns
ResultSet getFunctionColumns(String catalog, String schemaPattern, String functionNamePattern, String columnNamePattern) throws SQLException
检索给定目录的系统或用户函数参数和返回类型的描述。仅返回与架构,函数和参数名称条件匹配的描述。 他们被下令
FUNCTION_CAT
,FUNCTION_SCHEM
,FUNCTION_NAME
和SPECIFIC_ NAME
。 在此范围内,返回值(如果有)是第一个。 接下来是调用顺序中的参数描述。 列描述遵循列号顺序。ResultSet
中的每一行都是参数说明,列说明或返回类型说明,其中包含以下字段:- FUNCTION_CAT字符串
=>
功能目录(可能是null
) - FUNCTION_SCHEM字符串
=>
函数模式(可能是null
) - FUNCTION_NAME字符串
=>
函数名称。 这是用于调用该函数的名称 - COLUMN_NAME字符串
=>
列/参数名称 - COLUMN_TYPE短
=>
种类/参数:- functionColumnUnknown - 没人知道
- functionColumnIn - IN参数
- functionColumnInOut - INOUT参数
- functionColumnOut - OUT参数
- functionColumnReturn - 函数返回值
- functionColumnResult - 表示参数或列是
ResultSet
的列
- DATA_TYPE int
=>
java.sql.Types中的SQL类型 - TYPE_NAME字符串
=>
SQL类型名称,对于UDT类型,类型名称是完全限定的 - PRECISION int
=>
精度 - LENGTH int
=>
数据的字节长度 - SCALE short
=>
scale - 对于SCALE不适用的数据类型,返回null。 - RADIX短
=>
基数 - NULLABLE short
=>
可以包含NULL。- functionNoNulls - 不允许NULL值
- functionNullable - 允许NULL值
- functionNullableUnknown - 可空性未知
- 备注字符串
=>
描述列/参数的注释 - CHAR_OCTET_LENGTH int
=>
二进制和基于字符的参数或列的最大长度。 对于任何其他数据类型,返回的值为NULL - ORDINAL_POSITION int
=>
输入和输出参数的序号位置,从1开始。 如果此行描述函数的返回值,则返回值0。 对于结果集列,它是从1开始的结果集中列的序号位置。 - IS_NULLABLE字符串
=>
ISO规则用于确定参数或列的可为空性。- 是---如果参数或列可以包含NULL
- NO ---如果参数或列不能包含NULL
- 空字符串---如果参数或列的可空性未知
- SPECIFIC_NAME字符串
=>
在其架构中唯一标识此函数的名称。 这是用户指定的或DBMS生成的名称,可能与FUNCTION_NAME
不同,例如具有过载功能
PRECISION列表示给定参数或列的指定列大小。 对于数字数据,这是最大精度。 对于字符数据,这是字符长度。 对于datetime数据类型,这是String表示的字符长度(假设小数秒组件的最大允许精度)。 对于二进制数据,这是以字节为单位的长度。 对于ROWID数据类型,这是以字节为单位的长度。 对于列大小不适用的数据类型,将返回Null。
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
functionNamePattern
- 过程名称模式; 必须匹配存储在数据库中的函数名称 -
columnNamePattern
- 参数名称模式; 必须匹配存储在数据库中的参数或列名 - 结果
-
ResultSet
- 每行描述用户函数参数,列或返回类型 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.6
- 另请参见:
-
getSearchStringEscape()
- FUNCTION_CAT字符串
-
getPseudoColumns
ResultSet getPseudoColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern) throws SQLException
检索指定目录和架构中给定表中可用的伪或隐藏列的描述。 伪列或隐藏列可能并不总是存储在表中,并且在ResultSet中不可见,除非它们在查询的最外面的SELECT列表中指定。 可能不一定能够修改伪列或隐藏列。 如果没有伪列或隐藏列,则返回空ResultSet。仅返回与目录,架构,表和列名称条件匹配的列描述。 他们被下令
TABLE_CAT
,TABLE_SCHEM
,TABLE_NAME
和COLUMN_NAME
。每列描述都包含以下列:
- TABLE_CAT字符串
=>
表目录(可能是null
) - TABLE_SCHEM字符串
=>
表模式(可以是null
) - TABLE_NAME字符串
=>
表名 - COLUMN_NAME字符串
=>
列名 - DATA_TYPE int
=>
java.sql.Types中的SQL类型 - COLUMN_SIZE int
=>
列大小。 - DECIMAL_DIGITS int
=>
小数位数。 对于DECIMAL_DIGITS不适用的数据类型,将返回Null。 - NUM_PREC_RADIX int
=>
基数(通常为10或2) - COLUMN_USAGE字符串
=>
列的允许用法。 返回的值将对应于PseudoColumnUsage.name()
返回的枚举名称 - 备注字符串
=>
评论描述列(可能是null
) - CHAR_OCTET_LENGTH int
=>
for char类型列中的最大字节数 - IS_NULLABLE字符串
=>
ISO规则用于确定列的可为空性。- 是---如果列可以包含NULL
- NO ---如果列不能包含NULL
- 空字符串---如果列的可空性未知
COLUMN_SIZE列指定给定列的列大小。 对于数字数据,这是最大精度。 对于字符数据,这是字符长度。 对于datetime数据类型,这是String表示的字符长度(假设小数秒组件的最大允许精度)。 对于二进制数据,这是以字节为单位的长度。 对于ROWID数据类型,这是以字节为单位的长度。 对于列大小不适用的数据类型,将返回Null。
- 参数
-
catalog
- 目录名称; 必须匹配目录名称,因为它存储在数据库中; “”检索那些没有目录的人;null
表示不应使用目录名称来缩小搜索范围 -
schemaPattern
- 模式名称模式; 必须匹配模式名称,因为它存储在数据库中; “”检索没有架构的那些;null
表示不应使用模式名称来缩小搜索范围 -
tableNamePattern
- 表名模式; 必须匹配存储在数据库中的表名 -
columnNamePattern
- 列名模式; 必须匹配列名称,因为它存储在数据库中 - 结果
-
ResultSet
- 每行都是列描述 - 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.7
- 另请参见:
-
PseudoColumnUsage
- TABLE_CAT字符串
-
generatedKeyAlwaysReturned
boolean generatedKeyAlwaysReturned() throws SQLException
如果为自动生成的键列指定的列名称或索引有效且语句成功,则检索是否始终返回生成的键。 返回的密钥可能是也可能不是基于自动生成密钥的列。 有关其他详细信息,请参阅JDBC驱动程- 结果
-
true
若有; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.7
-
getMaxLogicalLobSize
default long getMaxLogicalLobSize() throws SQLException
检索此数据库允许的最大字节数,以LOB
的逻辑大小。默认实现将返回
0
- 结果
- 允许的最大字节数; 零的结果意味着没有限制或限制未知
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.8
-
supportsRefCursors
default boolean supportsRefCursors() throws SQLException
检索此数据库是否支持REF CURSOR。默认实现将返回
false
- 结果
-
true
如果此数据库支持REF CURSOR; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 1.8
-
supportsSharding
default boolean supportsSharding() throws SQLException
检索此数据库是否支持分片。- 实现要求:
-
默认实现将返回
false
- 结果
-
true
此数据库是否支持分片; 否则为false
- 异常
-
SQLException
- 如果发生数据库访问错误 - 从以下版本开始:
- 9
-
-