.NET

Datenbanken verwalten

Nachdem Sie eine Verbindung erstellt haben, können Sie sie öffnen, indem Sie im Bereich Verbindungen auf Verbinden klicken oder in der Verbindungsliste doppelt auf sie klicken. OmniDB wechselt dann in den Bereich Datenbank und öffnet die Verbindung in einem neuen Verbindungs-Tab.

Bereiche des Arbeitsbereichs

Die Symbolleiste am linken Fensterrand wechselt zwischen den Bereichen des Arbeitsbereichs:

Die Bereiche Datenbank, Überwachung, Benachrichtigungen, Berechtigungen und Verbundene Benutzer zeigen oben alle dieselbe Leiste geöffneter Verbindungs-Tabs mit derselben Auswahl: Wählen Sie in einem davon eine Verbindung, folgen die anderen. Ein Wechsel des Bereichs schließt nie eine Verbindung.

Verbindungs-Tabs

Jede geöffnete Verbindung ist ein Tab in dieser Leiste, benannt nach der Verbindung. Eine Verbindung, die mit einer Umgebung (Production, UAT, Development, Archive) markiert ist, zeigt deren Farbe auf ihrem Tab, sodass sich eine Produktionsverbindung leicht unterscheiden lässt. Fährt man mit der Maus über einen Tab, werden seine Details (Server oder Verbindungszeichenfolge) und seine Schließen-Schaltfläche (×) angezeigt. Tabs lassen sich per Drag & Drop umsortieren.

Das + am Ende der Leiste öffnet eine weitere Verbindung: Es listet Ihre gespeicherten Verbindungen auf (gruppiert, falls Sie Gruppen verwenden) und unter SSH-Konsolen Ihre Terminal-Verbindungen. Das Schließen eines Verbindungs-Tabs beendet dessen Datenbanksitzungen.

Innerhalb eines Verbindungs-Tabs finden Sie:

Ein Abfrage-Tab enthält einen SQL-Editor mit Syntaxhervorhebung, Autovervollständigung und Suchen & Ersetzen, eine Werkzeugleiste (Ausführen, Anweisung an Cursorposition ausführen, SQL einrücken, Befehlsverlauf, Explain, Explain Analyze, Autocommit, Daten exportieren, …) und darunter den Ergebnisbereich mit den Unter-Tabs Daten, Meldungen und Explain. Details dazu finden Sie unter SQL-Abfragen schreiben.

Mit Datenbanken arbeiten

Erweitern Sie den Wurzelknoten des Baums (benannt nach der Datenbank-Engine). Wenn Sie eine Verbindung ohne gespeichertes Passwort zum ersten Mal verwenden, fragt OmniDB danach. Ein in diese Abfrage eingegebenes Passwort wird für 30 Minuten Ihrer Sitzung gespeichert; danach erscheint die Abfrage erneut. Nach Eingabe des korrekten Passworts zeigt der Wurzelknoten die Serverversion und klappt auf; er zeigt die aktuelle Datenbankverbindung sowie instanzweite Elemente — bei PostgreSQL: Datenbanken, Tablespaces, Rollen und Replikations-Slots.

Sie können sich mit einer einzelnen PostgreSQL-Datenbank verbinden und über dieselbe Verbindung auch mit anderen Datenbanken derselben PostgreSQL-Instanz. Zum Wechseln erweitern Sie den Knoten einer anderen Datenbank: OmniDB fragt, ob Sie die aktive Datenbank wirklich wechseln möchten, und macht sie bei Ja zur aktiven Datenbank dieses Verbindungs-Tabs.

Erweitern Sie nun den Knoten Schemas. Sie sehen alle Schemata in der aktuellen Datenbank (bei PostgreSQL werden TOAST- und temporäre Schemata nicht angezeigt).

The database tree with the Databases node expanded

Klicken Sie nun, um das Schema public zu erweitern. Sie sehen verschiedene Arten von Elementen, die in diesem Schema enthalten sind.

The database tree with the public schema expanded

Klicken Sie nun, um den Knoten Tabellen zu erweitern, und Sie sehen alle Tabellen im Schema public. Erweitern Sie eine beliebige Tabelle, und Sie sehen ihre Spalten, den Primärschlüssel, Fremdschlüssel, Constraints, Indizes, Regeln, Trigger und Partitionen.

A table expanded in the database tree, with its Properties panel

Um Datensätze innerhalb einer Tabelle anzuzeigen, klicken Sie mit der rechten Maustaste darauf und wählen Sie Datenaktionen > Daten abfragen.

The Data Actions submenu of a table

Beachten Sie, dass OmniDB einen neuen SQL-Editor mit einer einfachen Abfrage zum Auflisten der Tabellendatensätze öffnet. Die Datensätze werden in einer Ergebnistabelle direkt unter dem Editor angezeigt. Diese Tabelle lässt sich per Tastatur bedienen, als würden Sie eine Tabellenkalkulation verwenden. Sie können auch Daten aus einzelnen Zellen oder Zellblöcken (die per Tastatur oder Maus ausgewählt werden können) kopieren und in eine beliebige Tabellenkalkulation einfügen.

A query tab showing the rows of a table

Sie können die Abfrage im SQL-Editor bearbeiten und einfache oder komplexere Abfragen schreiben. Klicken Sie zum Ausführen auf die Schaltfläche Ausführen, oder drücken Sie Alt-Q (Ctrl-Q unter macOS). Hat das Ergebnis mehr Zeilen als der zuerst abgerufene Block, erscheinen die Schaltflächen Mehr abrufen und Alle abrufen. Weitere Details dazu in den nächsten Kapiteln.

Arbeiten mit mehreren Tabs innerhalb derselben Verbindung

Innerhalb einer einzelnen Verbindung können Sie mehrere innere Tabs erstellen, indem Sie auf das + am Ende der Leiste der inneren Tabs klicken und dann Abfrage-Tab (oder Konsolen-Tab) wählen.

In OmniDB können Sie mehrere SQL-Anweisungen und Prozeduren parallel ausführen. Jeder Abfrage-Tab hat seine eigene Datenbanksitzung. Während ein Tab ausgeführt wird, zeigt er ein Ladesymbol; ist ein Tab fertig, den Sie gerade nicht ansehen, zeigt er stattdessen ein Häkchen. Die rote Schaltfläche Abbrechen bricht die im aktuellen Tab laufende Anweisung ab.

Sie können einen Tab auch per Drag & Drop verschieben, um seine Reihenfolge zu ändern. Dies funktioniert sowohl bei inneren Tabs als auch bei Verbindungs-Tabs. Wird der Platz in einer Tab-Reihe knapp, schrumpfen die Tabs schrittweise bis auf ihr Symbol; fährt man mit der Maus über einen solchen Tab, wird sein Name angezeigt.

Zusätzlich können Sie Tastenkürzel zur Verwaltung innerer Tabs verwenden. Dies sind die Standardkürzel unter Windows/Linux (macOS verwendet Ctrl statt Alt); alle lassen sich unter Einstellungen > Tastenkombinationen ändern:

Für Verbindungs-Tabs gibt es keine Tastenkürzel — verwenden Sie hierfür die Maus oder Drag & Drop. (Das Menü Ansicht der Desktop-App bietet Tastenkürzel zum Wechseln der Bereiche; siehe Desktop-App.)

Alle Abfrage-Tabs werden automatisch gespeichert, sobald Sie sie ausführen. Selbst wenn Sie das OmniDB-Fenster oder den Browser-Tab schließen, sind sie in der Benutzerdatenbank von OmniDB gespeichert und werden beim nächsten Öffnen von OmniDB (in der Desktop-App) bzw. bei der nächsten Anmeldung (in der Server-Version) wiederhergestellt — OmniDB startet dann im Bereich Datenbank mit diesen geöffneten Verbindungen. Wenn Sie einen Verbindungs-Tab oder einen inneren Tab selbst schließen, wird er dauerhaft gelöscht und nicht wiederhergestellt.