ResultSet DatabaseMetaData.getTables(String catalog,String schema,String tableName,String []type)
该方法可以返回包含5列的结果集,并将报告一个越界异常。
函数描述:获取指定参数的表格信息。
(资料图片仅供参考)
参数描述:
参数:catalog:目录名,一般为空。
参数:schema:数据库名称,这是oracle的用户名。
参数:tablename:表名。
参数:type:表格的类型(表格|视图)
(资料图)
注意:在使用过程中,参数名必须大写。或者你得到一些东西。
3.方法getColumns的用法和功能描述:获取指定表的列信息。
原型:
ResultSet DatabaseMetaData getColumns(String catalog,String schema,String tableName,String columnName)
参数描述:
参数目录:类别名称
参数模式:用户模式名
参数tableName:数据库表名。
参数columnName:列名。
四、方法getPrimaryKeys的用法和函数说明:获取指定表的主键信息。
原型:
ResultSet DatabaseMetaData getPrimaryKeys(String catalog,String schema,String tableName)
参数描述:
参数目录:类别名称
参数模式:用户模式名
参数tableName:数据库表名。
注意:必须指定一个表名,否则返回值将为空。
动词(verb的缩写)方法。getTypeInfo()的用法和功能描述:获取当前数据库的数据类型信息。
不及物动词getExportedKeys方法的用法和功能描述:获取指定表的外键信息。
参数描述:
参数目录:类别名称
参数模式:用户模式名
参数tableName : 数据库表名称
DatabaseMetaData对象提供的是关于数据库的各种信息,这些信息包括:
数据库与用户,数据库标识符以及函数与存储过程。 数据库限制。 数据库支持不支持的功能。 架构、编目、表、列和视图等。通过调用DatabaseMetaData的各种方法,
程序可以动态的了解一个数据库。由于这个类中的方法非常的多那么就介绍几个常用的方法来给大家参考。
DatabaseMetaData实例的获取方法是,通过连接来获得的
Connection conn=//创建的连接。
DatabaseMetaData dbmd=Conn.getMetaData();
创建了这个实例,就可以使用他的方法来获取数据库得信息。首先是数据库中用户标识符的信息的获得,主要使用如下的方法:
getDatabaseProductName()用以获得当前数据库是什么数据库。比如oracle,access等。返回的是字符串。
getDatabaseProductVersion()获得数据库的版本。返回的字符串。
getDriverVersion()获得驱动程序的版本。返回字符串。
supportsResultSetType(ResultSet.resultype)是判定是否支持这种结果集的类型。比如参数如果是Result.TYPE_FORWARD_ONLY,那就是判定是否支持,
只能先前移动结果集的指针。返回值为boolean,true表示支持。
上面介绍的只是几个常用的方法,这个类中还有很多方法,可以到jdk的帮助文档中去查看类java.sql.DatabaseMetaData。
这个类中还有一个比较常用的方法就是获得表的信息。使用的方法是:
getTables(String catalog,String schema,String tableName,String[] types),
这个方法带有四个参数,他们表示的含义如下:
String catalog——要获得表所在的编目。串“”””意味着没有任何编目,Null表示所有编目。
String schema——要获得表所在的模式。串“”””意味着没有任何模式,Null表示所有模式。该参数可以包含单字符的通配符(“_”),也可以包含多字符的通配符(“%”)。
String tableName——指出要返回表名与该参数匹配的那些表,该参数可以包含单字符的通配符(“_”),也可以包含多字符的通配符(“%”)。
String types——一个指出返回何种表的数组。可能的数组项是:”TABLE”,”VIEW”,”SYSTEM TABLE”,”GLOBAL TEMPORARY”,
”LOCAL TEMPORARY”,”ALIAS”,“SYSNONYM”。
通过getTables()方法返回一个表的信息的结果集。这个结果集包括字段有:TABLE_CAT表所在的编目。TABLE_SCHEM表所在的模式,TABLE_NAME表的名称。
TABLE_TYPE标的类型。REMARKS一段解释性的备注。通过这些字段可以完成表的信息的获取。
还有两个方法一个是获得列getColumns(String catalog,String schama,String tablename,String columnPattern)一个是获得关键字的方法getPrimaryKeys(String?catalog, String?schema, String?table)这两个方法中的参数的含义和上面的介绍的是相同的。
通过getTables(),getColumns(),getPrimaryKeys()就可以完成表的反向设计了。主要步骤如下:
通过getTables()获得数据库中表的信息。 对于每个表使用,getColumns(),getPrimaryKeys()获得相应的列名,类型,限制条件,关键字等。 通过1,
2获得信息可以生成相应的建表的SQL语句。通过上述三步完成反向设计表的过程。
本文[高级伪原创标题]到此分享完毕,希望对大家有所帮助。