我试图从数据库中选择所有表名.使用以下代码行.DatabaseMetaData databaseMetaData = connection.getMetaData();resultSet = databaseMetaData.getTables(null, dbName, null, null);while(resultSet.next()){//doi...
我试图从数据库中选择所有表名.使用以下代码行.
DatabaseMetaData databaseMetaData = connection.getMetaData();
resultSet = databaseMetaData.getTables(null, dbName, null, null);
while(resultSet.next()){
//doing operations - take table name and all that
}
这里的问题是在mysql的情况下工作正常,意味着底层数据库是mysql – 没问题.但是当我使用mssql尝试相同的代码时,我得到的结果是空的.是否还有其他替代方法可以从mssql数据库中获取表详细信息.
如果它的..please提供了在diff数据库下获取表详细信息的区别,如mysql,mssql,oracle;因为在我的情况下我的数据库可能是上述任何一个.
任何人都可以请帮助.
解决方法:
获取代码,例如:
Connection con = null;
try {
Class.forName(
"com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection(
"jdbc:sqlserver://localhost:1269;"
+ "user=sa;password=HerongYang;"
+ "database=AdventureWorksLT");
DatabaseMetaData meta = con.getMetaData();
ResultSet res = meta.getTables(null, null, null,
new String[] {"TABLE"});
System.out.println("List of tables: ");
while (res.next()) {
System.out.println(
" "+res.getString("TABLE_CAT")
+ ", "+res.getString("TABLE_SCHEM")
+ ", "+res.getString("TABLE_NAME")
+ ", "+res.getString("TABLE_TYPE")
+ ", "+res.getString("REMARKS"));
}
res.close();
con.close();
您可以在此页面尝试此链接:
Listing All Tables – getTables()
沃梦达教程
本文标题为:java – 在mssql的情况下,metadata.getTables结果集为空
基础教程推荐
猜你喜欢
- Java实现在Word中嵌入多媒体(视频、音频)文件 2023-08-07
- Springboot一个注解搞定返回参数key转换功能 2023-06-10
- 在netty中使用native传输协议的方法 2022-11-16
- SpringBoot整合SpringSession实现分布式登录详情 2023-03-31
- Idea工具中使用Mapper对象有红线的解决方法 2023-05-24
- 用法介绍Java HelloWorld程序 2023-10-08
- JVM GC 垃圾收集梳理总结 2023-02-20
- HttpClient实现表单提交上传文件 2023-04-12
- springBoot项目中使用@Value取值出现的问题及解决 2023-02-27
- Java ArrayList遍历foreach与iterator时remove的区别 2023-03-15