【发布时间】:2021-08-09 01:33:37
【问题描述】:
在我的 Java 应用程序中,我需要从 SQL Server 的链接服务器获取元数据。链接服务器的类型各不相同 - 可以是 SQL Server、Snowflake、Oracle 等。
有没有办法获得链接服务器的连接,就像我直接连接到 e.g. PostgreSQL?即代码sn-p。
// create java.sql.Connection
DatabaseMetaData databaseMetaData = connection.getMetaData();
databaseMetaData.getCatalog();
databaseMetaData.getSchemas();
...
【问题讨论】:
-
我不相信有任何方法可以使用
DatabaseMetaData来做到这一点。但是,您始终可以查询sys.servers视图。 -
是的,这是真的,谢谢。或者正如下面的@d0little 建议使用存储过程。我希望有一些 Java 库/驱动程序解决方案 - 事情是我还需要数据库/目录/模式/表的元数据,到目前为止,似乎存储过程(主要是
sp_tables_ex)是要走的路。由于链接服务器的多样性,使用 SQL 获取元数据会很痛苦。
标签: java sql sql-server jdbc