T-SQL Alle Tabellennamen einer Datenbank auslesen
Um alle Tabellennamen einer MS SQL Datenbank auszulesen, gibt es zwei Möglichkeiten.
Option 1: Abfrage des INFORMATION_SCHEMA.TABLES:
1 2 3 4 |
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' ORDER BY TABLE_NAME; |
Option 2: Abfrage der sys.tables:
1 2 3 4 |
SELECT name FROM sys.tables WHERE type = 'U' ORDER BY name; |
Die bessere Option ist die Abfrage des INFORMATION_SCHEMA. Gründe sind, dass die Abfrage etwas schneller ist und sich ggf. je nach Serverversion die Abfrage der SYS.TABLES ändern kann und es so zu ungewollten Fehlern kommen kann.