1096 Stimmen

Wie bekomme ich eine Liste aller Tabellen in einer Datenbank mit TSQL?

Wie kann ich am besten die Namen aller Tabellen in einer bestimmten Datenbank auf SQL Server ermitteln?

2 Stimmen

4 Stimmen

Hat SHOW TABLES (wie in MySQL verwendet) funktionieren?

1voto

Friend Punkte 34570
SELECT TABLE_NAME 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_TYPE='BASE TABLE' 
ORDER BY TABLE_NAME

1voto

Frank Punkte 71

Dank an Ray Vega, dessen Antwort alle Benutzertabellen in einer Datenbank angibt...

exec sp_msforeachtable 'print ''?'''

sp_helptext zeigt die zugrundeliegende Abfrage an, die sich auf...

select * from dbo.sysobjects o 
join sys.all_objects syso on o.id =  syso.object_id  
where OBJECTPROPERTY(o.id, 'IsUserTable') = 1 
and o.category & 2 = 0

1voto

Masoud Darvishian Punkte 3424

使用方法 SELECT * FROM INFORMATION_SCHEMA.COLUMNS zeigt Ihnen auch alle Tabellen und zugehörigen Spalten.

1voto

JoelF Punkte 19

Um durch Replikation hinzugefügte Tabellen und alle anderen von Microsoft hinzugefügten Tabellen zu entfernen, führen Sie diesen Befehl aus:

SELECT s.NAME SchemaName, t.NAME TableName
FROM [dbname].SYS.tables t
INNER JOIN [dbname].SYS.SCHEMAS s
ON t.SCHEMA_ID = s.SCHEMA_ID
WHERE t.is_ms_shipped=0 and type_desc = 'USER_TABLE'
ORDER BY s.NAME, t.NAME

0 Stimmen

So wird dies funktionieren, um die Frage von OP zu lösen, mit Ausnahme der WHERE-Klausel?

0 Stimmen

Where-Klausel entfernt Tabellen, die Microsoft hinzufügt, und alle Systemreplikationstabellen

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