DatabaseMetaData 接口

DatabaseMetaData 接口  DatabaseMetaData接口DatabaseMetaData接口作为整体提供有关数据库的综合信息。其中某些方法采用“字符串”自变量作为目录和模式名称。DB2Everyplace忽略这些自变量。此处的某些方法以ResultSet对象的格式返回信息列表。可以使用正常ResultSet方法(如getString和getInt)来从这些Res

大家好,又见面了,我是你们的朋友全栈君。 

 

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。

相关任务

相关参考

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151002.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JAVASocket实现聊天室「建议收藏」

    JAVASocket实现聊天室「建议收藏」JAVASocket实现聊天室文章目录JAVASocket实现聊天室Sokcet是什么JAVASOCKET编程中的两个重要对象ServerSocket构造方法acceptbindcloseSocket构造方法getInputStream,getOutputStreamclose聊天室实现服务端实现客户端实现读线程实现写线程实现运行结果Sokcet是什么socket本质上是两个端点之间的通…

    2022年6月15日
    26
  • pycharm的库安装不成功_pycharm上传github

    pycharm的库安装不成功_pycharm上传github艹,坑死我算了,应该是这个目录C:\ProgramFiles\Git\cmd\git.exe,之前我一直用的是git-bash那个,导致一直不对。

    2022年8月27日
    3
  • Java基础(多态的理解与应用)

    Java基础(多态的理解与应用)1.多态概述 多态是继封装、继承之后,面向对象的第三大特性。 多态现实意义理解: 现实事物经常会体现出多种形态,如学生,学生是人的一种,则一个具体的同学张三既是学生也是人,即出现两种形态。…

    2022年7月8日
    18
  • Kafka实战:如何把Kafka消息时延秒降10倍

    Kafka实战:如何把Kafka消息时延秒降10倍

    2022年4月2日
    35
  • java标记符_java标识符的书写规则

    java标记符_java标识符的书写规则标识符就是给java中的类,方法,变量起名字的符号。规则:1.可以由字母,数字,下划线,美元符号组成,但是不能包含@,%,空格等其它特殊字符,不能以数字开头。2.不能是java的关键字,比如static,import,float,int,abstract还有好多这里就不一一例举了,需要的可以自己百度。3.对大小写是敏感的,比如一些包名和类名以及变量名我们虽然大小写不会报错,但是我们需要尽可能的规范…

    2022年7月8日
    15
  • mysql 自定义函数 case when[通俗易懂]

    mysql 自定义函数 case when[通俗易懂]#字符串局部替换函数DELIMITER$$CREATEFUNCTIONreplaceString(sVARCHAR(14),fVARCHAR(5),rVARCHAR(5))RETURNSVARCHAR(14)BEGIN DECLAREfindposINT; DECLAREreturnstringVARCHAR(14); SETfindpos=INSTR(

    2022年9月7日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号