Wie Liste ich die Namen der Tabellen in einer Datenbank?

Wir haben eine Oracle 8i Datenbank auf die ich nur Leserechte. Wir verwenden von ODBC und MS Access zum Lesen von Daten von dieser Datenbank, da wir nicht die Oracle-Client-software. Dies funktioniert sehr gut.
Ich bin mit ADO.NET mit ASP.NET. Jetzt möchte ich anzeigen, um eine Liste aller Tabellen, die ich sehe in MS Access über ODBC.
Ich habe versucht, diese mit ODBC-Verbindung in C#. Ich habe versucht, die folgenden Abfragen, um die Liste der Tabellen, die nicht funktioniert.

  1. select table_name from dba_tables;
  2. select table_name from all_tables;
  3. select tname from tab;

Bitte helfen.

Danke für die Antwort. Ich habe versucht, ohne Glück. Alle, die ich sehen wollen, ist dieselbe Liste von Tabellen, die in MS Access, wenn ich die ODBC verwenden, erstellen Sie Verknüpfte Tabellen.

Dies ist die Funktion, die ich benutze, um dies zu erreichen, was aber nicht wirklich funktioniert, wie ich mir das gewünscht hätte.

public static ArrayList GetODBCTablesList()
        {
            try
            {                
                OdbcConnection DbConnection = new OdbcConnection("DSN=mydsn;UID=user1;PWD=pwd1;");
                DbConnection.Open();

                OdbcCommand DbCommand = DbConnection.CreateCommand();
                DbCommand.CommandText = "select table_name from all_tables";                
                OdbcDataReader DbReader = DbCommand.ExecuteReader();

                if (DbReader != null)
                {
                    ArrayList TableList = new ArrayList();
                    while (DbReader.Read())
                    {
                        TableList.Add(DbReader.GetString(0));
                    }
                    DbReader.Close();
                    DbCommand.Dispose();
                    DbConnection.Close();

                    TableList.Sort();
                    TableList.TrimToSize();
                    return TableList;
                }

                DbCommand.Dispose();
                DbConnection.Close();

                return null;
            }
            catch (Exception ex)
            {
                LogHandler.WriteLogMessage(ex.GetBaseException().ToString(), true);
                return null;
            }
        }

Dieser gibt mir eine Liste von Tabellen, die nicht enthält alle Tabellen, die ich sehe, wenn ich die link-Tabellen in MS Access mit ODBC.

Könnten Sie uns etwas mehr details, was nicht funktioniert, mit Abfrage 2?
Vielleicht sollten Sie versuchen, Sie erneut, aber dieses mal, Glück.

InformationsquelleAutor Cnu | 2010-09-21

Schreibe einen Kommentar