DatabaseMetaData 接口

 

 

DatabaseMetaData 接口

DatabaseMetaData 接口作为整体提供有关数据库的综合信息。

其中某些方法采用“字符串”自变量作为目录和模式名称。DB2 Everyplace 忽略这些自变量。

此处的某些方法以 ResultSet 对象的格式返回信息列表。可以使用正常 ResultSet 方法(如 getString 和 getInt)来从这些 ResultSet 中检索数据。

如果元数据的给定形式不可用,则这些方法抛出 SQLException。

java.sql 包

公共接口 DatabaseMetaData

表 98 列示 DatabaseMetaData 接口中 DB2 Everyplace 支持的字段。

表 98. DatabaseMetaData 字段

字段类型 字段
static int columnNoNulls 指示该列可能不允许 NULL 值。
static int columnNullable 指示该列明确允许 NULL 值。
static int columnNullableUnknown 指示列的可空性未知。

表 99 列示 DatabaseMetaData 接口中 DB2 Everyplace 支持的方法。

表 99. DatabaseMetaData 接口方法

方法返回值类型 方法
ResultSet getColumns(String catalog, String schemaPattern, String tableNamePattern, String columnNamePattern) 获取指定目录中可用的表列的描述。
Connection getConnection() JDBC 2.0 检索生成此元数据对象的连接。
ResultSet getCrossReference(String primaryCatalog, String primarySchema, String primaryTable, String foreignCatalog, String foreignSchema, String foreignTable) 获取外键表中引用主键表的主键列的外键列的描述(描述一个表如何导入另一个键。)正常情况下应返回单个外键/主键对(大多数表仅从表导入某个外键一次。)按 FKTABLE_NAME 和 KEY_SEQ 排序它们。
String getDatabaseProductName() 此数据库产品的名称是什么?
String getDatabaseProductVersion() 此数据库产品的版本是什么?
int getDriverMajorVersion() 此 JDBC 驱动程序的主版本号是什么?
int getDriverMinorVersion()此 JDBC 驱动程序的次版本号是什么?
String getDriverName() 此 JDBC 驱动程序的名称是什么?
String getDriverVersion() 此 JDBC 驱动程序的版本是什么?
ResultSet getExportedKeys(String catalog, String schema, String table) 获取引用表的主键列的外键列的描述(由表导出外键)。
String getIdentifierQuoteString() 什么是用来将 SQL 标识引起的字符串?如果不支持将标识加引号,则返回空格“ ”。
ResultSet getImportedKeys(String catalog, String schema, String table) 获取由表的外键列引用的主键列的描述(由表导入的主键)。
int getMaxBinaryLiteralLength() 直接插入的二进制文字内可以具有多少个十六进制字符?
int getMaxCharLiteralLength() 字符文字的最大长度是多少?
int getMaxColumnNameLength() 列名长度的限制是多少?
int getMaxColumnsInGroupBy() GROUP BY 子句中的最大列数是多少?
int getMaxColumnsInIndex() 索引内允许的最大列数是多少?
int getMaxColumnsInOrderBy() ORDER BY 子句中的最大列数是多少?
int getMaxColumnsInSelect() SELECT 语句中的最大列数是多少?
int getMaxConnections() 每次可以有多少个与此数据库的活动连接?
int getMaxIndexLength() 索引的最大长度是多少(以字节计)?
int getMaxRowSize() 单行的最大长度是多少?
int getMaxStatementLength() SQL 语句的最大长度是多少?
int getMaxStatements() 每次可以对此数据库打开多少个活动的语句?
int getMaxTableNameLength() 表名的最大长度是多少?
int getMaxTablesInSelect() SELECT 语句中最大表数是多少?
int getMaxUserNameLength() 用户名的最大长度是多少?
ResultSet getPrimaryKeys(String catalog, String schema, String table) 获取表的主键列的描述。
String getSearchStringEscape() 获取可用于将通配符转义的字符串。
ResultSet getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types) 获取目录中可用的表的描述。
ResultSet getUDTs(String catalog, String schemaPattern, String typeNamePattern, int[] types) JDBC 2.0 获取在特定模式中定义的用户定义类型的描述。DB2 Everyplace 总是返回空的结果集,原因是它不支持 UDT。
String getURL() 此数据库的 URL 是什么?
String getUserName() 数据库所知的用户名是什么?
boolean supportsColumnAliasing() 支持列别名判别吗?
boolean supportsFullOuterJoins() 支持全嵌套外连接吗?
boolean supportsMixedCaseIdentifiers() 数据库要将混合大小写且未加引号的 SQL 标识视作区分大小写并从而以混合大小写方式存储它们吗?
boolean supportsMixedCaseQuotedIdentifiers() 数据库要将混合大小写且加了引号的 SQL 标识视作区分大小写并从而以混合大小写方式存储它们吗?
boolean supportsNonNullableColumns() 列可以定义为不可空吗?
boolean supportsOrderByUnrelated() “ORDER BY”子句可以使用不在 SELECT 语句中的列吗?
boolean supportsOuterJoins() 支持某种形式的外连接吗?
boolean supportsPositionedDelete() 支持定位 DELETE 吗?
boolean supportsPositionedUpdate() 支持定位 UPDATE 吗?
boolean supportsResultSetType(int type) JDBC 2.0 数据库支持给定结果集类型吗?
boolean supportsSchemasInTableDefinitions() 可以在表定义语句中使用模式名吗?
boolean supportsTransactions() 事务受支持吗?如果不受支持,则隔离级别是 TRANSACTION_NONE。

相关任务

相关参考

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值