您的位置:首页 > 数据库

使用DatabaseMetaData判断数据库表是否存在

2009-09-16 21:07 316 查看
该方法调用调用通用的底层API消除了不同厂商数据库的差别。

ResultSet getTables(String catalog,
String schemaPattern,
String tableNamePattern,
String[] types)
throws SQLException

获取可在给定类别中使用的表的描述。仅返回与类别、模式、表名称和类型标准匹配的表描述。它们根据
TABLE_TYPE
TABLE_CAT
TABLE_SCHEM
TABLE_NAME
进行排序。
每个表描述都有以下列:

TABLE_CAT String => 表类别(可为
null


TABLE_SCHEM String => 表模式(可为
null


TABLE_NAME String => 表名称

TABLE_TYPE String => 表类型。典型的类型是 "TABLE"、"VIEW"、"SYSTEM TABLE"、"GLOBAL TEMPORARY"、"LOCAL TEMPORARY"、"ALIAS" 和 "SYNONYM"。

REMARKS String => 表的解释性注释

TYPE_CAT String => 类型的类别(可为
null


TYPE_SCHEM String => 类型模式(可为
null


TYPE_NAME String => 类型名称(可为
null


SELF_REFERENCING_COL_NAME String => 有类型表的指定 "identifier" 列的名称(可为
null


REF_GENERATION String => 指定在 SELF_REFERENCING_COL_NAME 中创建值的方式。这些值为 "SYSTEM"、"USER" 和 "DERIVED"。(可能为
null


注: 有些数据库可能不返回用于所有表的信息。

参数:
catalog
- 类别名称;它必须与存储在数据库中的类别名称匹配;该参数为 "" 表示获取没有类别的那些描述;为
null
则表示该类别名称不应该用于缩小搜索范围
schemaPattern
- 模式名称的模式;它必须与存储在数据库中的模式名称匹配;该参数为 "" 表示获取没有模式的那些描述;为
null
则表示该模式名称不应该用于缩小搜索范围
tableNamePattern
- 表名称模式;它必须与存储在数据库中的表名称匹配
types
- 要包括的表类型所组成的列表,必须取自从
getTableTypes()
返回的表类型列表;
null
表示返回所有类型 返回:
ResultSet
- 每一行都是一个表描述 抛出:
SQLException
- 如果发生数据库访问错误 另请参见:
getSearchStringEscape()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: