一、使用 JDBC 驱动程序处理元数据
•Java 通过JDBC获得连接以后,得到一个Connection 对象,可以从这个对象获得有关数据库管理系统的各种信息,包括数据库中的各个表,表中的各个列,数据类型,触发器,存储过程等各方面的信息。根据这些信息,JDBC可以访问一个实现事先并不了解的数据库。
获取这些信息的方法都是在DatabaseMetaData类的对象上实现的,而DataBaseMetaData对象是在Connection对象上获得的
1. DatabaseMetaData类
• DatabaseMetaData 类中提供了许多方法用于获得数据源的各种信息,通过这些方法可以非常详细的了解数据库的信息:– getURL () :返回一个 String 类对象,代表数据库的 URL 。– getUserName () :返回连接当前数据库管理系统的用户名。– isReadOnly () :返回一个 boolean 值,指示数据库是否只允许读操作。– getDatabaseProductName () :返回数据库的产品名称。– getDatabaseProductVersion () :返回数据库的版本号。– getDriverName () :返回驱动驱动程序的名称。– getDriverVersion () :返回驱动程序的版本号。
2. ResultSetMetaData 类
• 可用于获取关于 ResultSet 对象中列的类型和属性信息的对象:– getColumnName ( int column) :获取指定列的名称– getColumnCount () :返回当前 ResultSet 对象中的列数。– getColumnTypeName ( int column) :检索指定列的数据库特定的类型名称。– getColumnDisplaySize ( int column) :指示指定列的最大标准宽度,以字符为单位。– isNullable ( int column) :指示指定列中的值是否可以为 null 。– isAutoIncrement ( int column) :指示是否自动为指定列进行编号,这样这些列仍然是只读的。