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?

5voto

DarkRob Punkte 3737

Nun, Sie können die sys.objekte um alle Datenbankobjekte zu erhalten.

 GO
 select * from sys.objects where type_desc='USER_TABLE' order by name
 GO

OU

--  For all tables
select * from INFORMATION_SCHEMA.TABLES 
GO 

  --- For user defined tables
select * from INFORMATION_SCHEMA.TABLES where TABLE_TYPE='BASE TABLE'
GO

  --- For Views
select * from INFORMATION_SCHEMA.TABLES where TABLE_TYPE='VIEW'
GO

5voto

Erikk Ross Punkte 2165
SELECT sobjects.name
FROM sysobjects sobjects
WHERE sobjects.xtype = 'U'

1 Stimmen

SELECT name FROM sysobjects WHERE xtype='U' AND name <> 'sysdiagrams'; weil die Tabelle sysdiagrams, obwohl sie von Microsoft SQL Server Management Studio erstellt wurde, technisch gesehen keine Systemtabelle ist, die wir aber in der Regel trotzdem ausschließen möchten.

3voto

Scott Software Punkte 449

In SSMS, um alle voll qualifizierten Tabellennamen in einer bestimmten Datenbank zu erhalten (z. B. "MeineDatenbank"):

SELECT [TABLE_CATALOG] + '.' + [TABLE_SCHEMA] + '.' + [TABLE_NAME]
FROM   MyDatabase.INFORMATION_SCHEMA.Tables
WHERE  [TABLE_TYPE] = 'BASE TABLE' and [TABLE_NAME] <> 'sysdiagrams'
ORDER BY [TABLE_SCHEMA], [TABLE_NAME]

Ergebnisse:

  • MeineDatenbank.dbo.MeineTabelle1
  • MeineDatenbank.dbo.MeineTabelle2
  • MeineDatenbank.MeinSchema.MeineTabelle3
  • MeineDatenbank.MeinSchema.MeineTabelle4
  • usw.

2voto

Demietra95 Punkte 226
--for oracle
select tablespace_name, table_name from all_tables;

Unter diesem Link finden Sie viele weitere Informationen zu diesem Thema Thema

4 Stimmen

Dies gilt nicht für SQL Server, ist also keine Antwort auf diese Frage.

2voto

Vikash Punkte 51

Bitte benutzen Sie dies. Sie erhalten die Tabellennamen zusammen mit den Schemanamen:

SELECT SYSSCHEMA.NAME, SYSTABLE.NAME
FROM SYS.tables SYSTABLE
INNER JOIN SYS.SCHEMAS SYSSCHEMA
ON SYSTABLE.SCHEMA_ID = SYSSCHEMA.SCHEMA_ID

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