【问题标题】:Querying the teradata to get the list of all the databases查询 teradata 以获取所有数据库的列表
【发布时间】:2016-07-08 00:17:27
【问题描述】:

我使用resultsetgetmetadata 查询Teradata 数据库。出于某种原因,我发现使用 C# 很难得到结果。

这是Java代码:

public class T20905JD
{
    public static String sUser = "guest";
    public static String sPassword = "please";

    public static void main(String args[])

    {
        // Creation of URL to be passed to the JDBC driver
        String url = "jdbc:teradata://whomooz/TMODE=ANSI,CHARSET=UTF8";

        // Creating a connection object
        Connection con = DriverManager.getConnection(url, sUser, sPassword);
        System.out.println(" User " + sUser + " connected.");
        System.out.println(" Connection to Teradata established. \n");

        DatabaseMetaData dbmd = con.getMetaData();
        System.out.println(" DatabaseMetaData object created. \n");

        ResultSet rs = dbmd.getSchemas();

        // Display the database names
        System.out.println(" DISPLAYING ALL DATABASE NAMES:\n");

        while(rs.next())
        {
            System.out.println(" " + rs.getString("TABLE_SCHEM"));
        }
    }
}

如何在 Teradata 中使用 C# 获得相同的结果?

【问题讨论】:

  • 改进的问题和代码格式

标签: java c# teradata


【解决方案1】:

这与 C# 或 Java 无关,而是与 Teradata 相关。获取所有数据库(模式)的最简单方法是查询:

SELECT DatabaseName, OwnerName
  FROM DBC.DATABASES
 WHERE DBKind = 'D';

如果您想查看数据库的层次结构,您必须在查询中包含 OwnerName。

【讨论】:

  • 您可能希望使用支持 UNICODE 的 DBC.DatabasesV。
猜你喜欢
  • 2020-12-10
  • 2020-03-22
  • 2014-04-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-11
  • 1970-01-01
  • 2018-02-24
相关资源
最近更新 更多