浅谈 JDBC 元数据
Java 通过JDBC获得连接以后,得到一个Connection 对象,可以从这个对象获得有关数据库管理系统的各种信息,包括数据库中的各个表,表中的各个列,数据类型,触发器,存储过程等各方面的信息。根据这些信息,JDBC可以访问一个实现事先并不了解的数据库。
获取这些信息的方法都是在DatabaseMetaData类的对象上实现的,而DataBaseMetaData对象是在Connection对象上获得的。
DatabaseMetaData 类中提供了许多方法用于获得数据源的各种信息,通过这些方法可以非常详细的了解数据库的信息:
getURL():返回一个String类对象,代表数据库的URL。
getUserName():返回连接当前数据库管理系统的用户名。
isReadOnly():返回一个boolean值,指示数据库是否只允许读操作。
getDatabaseProductName():返回数据库的产品名称。
getDatabaseProductVersion():返回数据库的版本号。
getDriverName():返回驱动驱动程序的名称。
getDriverVersion():返回驱动程序的版本号。
/** * 查询特定数据库中的所有表 * @param connection 数据库连接对象 * @return 数据库表的list */ public static List<String> getTables(Connection connection){ try { List<String> tableList = new ArrayList<>(); DatabaseMetaData metaData = connection.getMetaData(); ResultSet resultSet = metaData.getTables(null, null, null, new String[]{"TABLE"}); while (resultSet.next()){ tableList.add(resultSet.getString(3)); } return tableList; } catch (SQLException e) { e.printStackTrace(); } return null; }
可用于获取关于 ResultSet 对象中列的类型和属性信息的对象:
getColumnName(int column):获取指定列的名称
getColumnCount():返回当前 ResultSet 对象中的列数。
getColumnTypeName(int column):检索指定列的数据库特定的类型名称。
getColumnDisplaySize(int column):指示指定列的最大标准宽度,以字符为单位。
isNullable(int column):指示指定列中的值是否可以为 null。
isAutoIncrement(int column):指示是否自动为指定列进行编号,这样这些列仍然是只读的。
总结
以上就是本文浅谈JDBC 元数据的全部内容,希望对大家有所帮助。欢迎大家参阅本站其他专题,有什么问题可以随时留言,小编会及时回复大家的。感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
- 连接池,元数据与jdbc框架
- 浅谈在JSP中利用Microsoft JDBC来连接数据库
- Java基础系列15:JDBC中使用元数据分析数据库
- 通过JDBC连接取得数据库相关的元数据
- SQL学习笔记之数据库专题(四):浅谈JDBC用法
- 浅谈JDBC
- JDBC—元数据和二进制文件的处理
- JDBC 元数据信息 getMetaData()
- <context:property-placeholder location="classpath:com/foo/jdbc.properties"/>、元数据与一个定制配置BeanFactoryPo
- Java -- JDBC_利用反射及 JDBC 元数据编写通用的查询方法
- 使用元数据简化jdbc代码---更新操作
- 使用元数据简化jdbc代码
- JavaEE-JDBC基础-元数据
- JDBC元数据操作-- DatabaseMetaData接口详解
- Java_jdbc 基础笔记之十四 数据库连接(元数据)
- 浅谈:如何用java写一个简单的基于MySQL的JDBC
- 初学JDBC(九)-细枝末节使用元数据分析数据库
- 《浅谈4种类型的JDBC驱动程序》
- 浅谈JDBC连接SQL Server 2005的几个关键点
- [疯狂Java]JDBC:ResultSetMetaData(结果集元数据分析)