SQLite ATTACH – Tabellen einer angehängten Datenbank auflisten
So findest du Tabellen in einer per ATTACH eingebundenen SQLite-Datenbank mit sqlite_schema und PRAGMA database_list
Dieser Artikel hat eine Lesedauer von 2 minutes Minuten.

Mit ATTACH kann SQLite mehrere Datenbankdateien in einer Verbindung öffnen. Tabellen listest du dann über den Schema-Namen der angehängten Datei.
SQLite ATTACH – Tabellen einer angehängten Datenbank auflisten
Viele suchen nach “SQLite ATTACH Tabellen anzeigen” oder “SQLite Tabellen einer angehängten Datenbank auflisten”. Die kurze Antwort lautet: Nutze den Alias aus ATTACH und frage alias.sqlite_schema ab. Der Alias ist der Schema-Name der angehängten Datenbank.
Der Beitrag gehört zur SQLite-Serie SQLite Fragen und Antworten. Sie sammelt kurze Lösungen für typische Fragen aus software-development.
Beispiel
Wenn eine Datenbank als logs angehängt wurde, liest du die Tabellen so aus:
ATTACH DATABASE 'logs.sqlite' AS logs;
SELECT name
FROM logs.sqlite_schema
WHERE type = 'table'
AND name NOT LIKE 'sqlite_%'
ORDER BY name;
und dann:
PRAGMA database_list;
Praxis-Hinweise
Der wichtige Punkt ist der Schema-Name. Bei der Hauptdatenbank ist das meistens main. Bei temporären Objekten ist es temp. Bei einer mit ATTACH geöffneten Datei verwendest du den selbst vergebenen Alias.
sqlite_schema enthält Tabellen, Views, Indexe und Trigger. Für reine Tabellen filterst du deshalb auf type = "table". Interne SQLite-Tabellen wie sqlite_sequence blendest du meistens aus.
Diese Abfrage ist dann nützlich, wenn ein Script mehrere lokale Datenbanken zusammen auswertet oder eine fremde SQLite-Datei zuerst inspiziert werden soll.
Häufige Stolperstellen
- Verwechsle den Dateinamen nicht mit dem Alias. Nach
AS logsheißt das Schemalogs, unabhängig vom Dateinamen. sqlite_masterfunktioniert in vielen Beispielen noch,sqlite_schemaist aber die modernere Bezeichnung.ATTACHgilt nur für die aktuelle SQLite-Verbindung. Eine zweite Verbindung kennt den Alias nicht automatisch.
Verwandte SQLite-Fragen
- SQLite table exists: prüfen, ob eine Tabelle existiert
- SQLite column names: Spaltennamen einer Tabelle auslesen
- Zur Übersicht der SQLite-Serie
Fazit
Für angehängte SQLite-Datenbanken ist der Alias der Schlüssel. Sobald er bekannt ist, funktioniert das Auflisten der Tabellen genauso kontrolliert wie bei der Hauptdatenbank.
Angehängte SQLite-Datenbanken in SQLite Hub prüfen
In SQLite Hub kannst du lokale SQLite-Datenbanken öffnen, Tabellenstrukturen prüfen und SQL-Abfragen direkt testen. Das ist praktisch, wenn du mit ATTACH arbeitest und nachvollziehen möchtest, welche Tabellen zu main, temp oder einer angehängten Datenbank wie logs gehören.
Gerade Abfragen wie PRAGMA database_list oder SELECT name FROM logs.sqlite_schema lassen sich so schneller kontrollieren. Der Schema-Name wird greifbarer, und typische Fehler wie die Verwechslung von Dateiname und Alias fallen früher auf.
FAQ
Wie liste ich Tabellen aus einer per ATTACH geöffneten SQLite-Datenbank?
Frage den Schema-Namen der angehängten Datenbank ab, zum Beispiel SELECT name FROM logs.sqlite_schema WHERE type = "table". Der Name logs kommt aus ATTACH ... AS logs.
Wie finde ich den Alias einer angehängten SQLite-Datenbank?
Mit PRAGMA database_list siehst du alle aktuell verbundenen Datenbanken und ihre Schema-Namen.
Soll ich sqlite_master oder sqlite_schema verwenden?
sqlite_master ist weiterhin verbreitet. Für neue Beispiele ist sqlite_schema die klarere und aktuelle Bezeichnung.


