2016-03-21 18 views
0

Ich Abfrage der Teradata-Datenbank mit resultset und getmetadata. Aus irgendeinem Grund finde ich es schwierig, das Ergebnis mit C# zu erhalten.Abfragen der Teradata, um die Liste aller Datenbanken zu erhalten

Dies ist der Code in 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")); 
     } 
    } 
} 

Wie würde ich das gleiche Ergebnis mit C# in Teradata erhalten?

+0

Verbesserte Frage und Code-Formatierung –

Antwort

1

Dies ist nicht im Zusammenhang mit C# noch Java, sondern Teradata. Der einfachste Weg, alle Datenbanken (Schemen) zu erhalten, ist für die Abfrage:

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

Wenn Sie die Hierarchie der Datenbanken sehen möchten, haben Sie Ownername in Ihre Abfrage.

+0

Works perfect.Thanks .. – fugazi

+0

Vielleicht möchten Sie DBC.DatabasesV verwenden, die UNICODE unterstützt. –

Verwandte Themen