409 Stimmen

Alle Tabellennamen einer bestimmten Datenbank per SQL-Abfrage abrufen?

Ich arbeite an einer Anwendung, die mit mehreren Datenbankservern wie "MySQL" und "MS SQL Server" arbeiten kann.

Ich möchte die Tabellennamen einer bestimmten Datenbank mit einer allgemeinen Abfrage erhalten, die für alle Datenbanktypen geeignet sein sollte. Ich habe folgendes versucht:

SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE='BASE TABLE'

Aber es gibt Tabellennamen aller Datenbanken eines bestimmten Servers, aber ich möchte nur die Tabellennamen der ausgewählten Datenbank erhalten. Wie kann ich diese Abfrage einschränken, um Tabellen einer bestimmten Datenbank zu erhalten?

4voto

Ashish Gupta Punkte 968

Für Mysql können Sie einfach tun. TABELLEN ANZEIGEN;

2voto

Do Nhu Vy Punkte 38281
SELECT TABLE_NAME
FROM your_database_name.INFORMATION_SCHEMA.TABLES
ORDER BY TABLE_NAME;

2voto

Md. Jamal Uddin Punkte 618

In unserem Oracle DB (PL/SQL) unten Code arbeiten, um die Liste aller vorhandenen Tabellen in unserer DB zu erhalten.

select * from tab;

und

select table_name from tabs;

Beide funktionieren. Lassen Sie uns versuchen, Ihre zu finden.

2voto

amanda Punkte 21
select * from sys.tables
order by schema_id      --comments: order by 'schema_id' to get the 'tables' in 'object explorer order'
go

1voto

Tyler Punkte 341

UPDATE AUF DIE NEUESTE VERSION VON MSSQL SERVER (17.7)

SELECT name FROM sys.Tables WHERE type_desc = 'USER_TABLE'

Oder SELECT * für get all columns.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X