c 获取mysql所有表名称_MFC ODBC 访问 数据库如何获取到所有表名?
发布日期:2021-08-20 00:42:46 浏览次数:13 分类:技术文章

本文共 950 字,大约阅读时间需要 3 分钟。

根据DataBaseMetaData获得数据库表名````

results =

dma.getTables(catalog, schema, tablemask, types[]);

其中参数的意义是:

catalog

要在其中查找表名的目录名。对于 JDBC-ODBC 数据库以及许多其他数据库而言,可将其设置为 null。这些数据库的目录项实际上是它在文件系统中的绝对路径名称。

schema

要包括的数据库“方案”。许多数据库不支持方案,而对另一些数据库而言,它代表数据库所有者的用户名。一般将它设置为 null。

tablemask

一个掩码,用来描述您要检索的表的名称。如果您希望检索所有表名,则将其设为通配符 %。请注意,SQL 中的通配符是 % 符号,而不是一般 PC 用户的 * 符号。

types[]

这是描述您要检索的表的类型的 String 数组。数据库中通常包括许多用于内部处理的表,而对作为用户的您没什么价值。如果它是空值,则您会得到所有这些表。如果您将其设为包含字符串“TABLES”的单元素数组,您将仅获得对用户有用的表格。

用于从数据库中获取表名的简单代码相当于获取 DatabaseMetaData 对象,并从其中检索表名:

con = DriverManager.getConnection(url);

//获取数据库的元数据

dma =con.getMetaData();

//将数据库中的表的名称转储出来

String[] types = new String[1];

types[0] = "TABLES"; //设置查询类型

//请注意通配符是 % 符号(而不是“*”)

results = dma.getTables(null, null, "%", types);

然后,我们可以打印出表名,正如我们上面所做的那样:

boolean more = results.next();

while (more)

{

for (i = 1; i <= numCols; i++)

System.out.print(results.getString(i)+" ");

System.out.println();

more = results.next();

}

转载地址:https://blog.csdn.net/weixin_31856057/article/details/115062191 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:php redis 关闭,使用PHP+Redis实现延迟任务,实现自动取消订单功能
下一篇:java线程executors_java多线程教程—Executors线程池

发表评论

最新留言

关注你微信了!
[***.104.42.241]2025年01月03日 03时22分23秒