Das ist neu in DataGrip 2019.2

Services-Toolfenster

Alle unsere IDEs haben jetzt ein neues Toolfenster mit dem Namen Services. In DataGrip können Sie dort alle Verbindungen beobachten und verwalten.

Jede Verbindung hat einen eigenen Knoten unter der entsprechenden Datenquelle. Wenn das kleine grüne Licht auf dem Symbol leuchtet, ist die Verbindung aktiv. Sie können eine Verbindung einfach über das Kontextmenü schließen.

Sie können alle Servicetypen als Knoten anzeigen oder die Ansicht ändern, um sie als Registerkarten anzuzeigen. Verwenden Sie die Aktion Show in New Tab in der Symbolleiste oder ziehen Sie einfach den gewünschten Knoten auf die Titelleiste des Toolfensters Services.

Das Abfrageergebnis wird nun in der Ansicht Services unter der Verbindung an die jeweilige Konsole angehängt.

Wichtig! Das Standard-Tastenkürzel für das Toolfenster "Services" lautet Alt+8.

Die Baumstruktur ausblenden

Die Baumstruktur ausblenden

Wenn Sie die Baumstruktur von Services nicht sehen möchten (d. h. die früher verwendete Darstellung wiederhestellen möchten), klicken Sie auf das Zahnradsymbol und blenden Sie sie aus.

Stoppuhr für die Abfragedauer

Im Toolfenster Services gibt es noch eine weitere häufig angefragte Funktion: einen Live-Timer für Abfragen. Für jede Verbindung, über die eine Abfrage ausgeführt wird, wird die Abfragedauer auf der rechten Seite angezeigt.

Docker

Docker

Wenn Sie das Docker-Plugin verwenden, werden die entsprechenden Services auch in diesem Toolfenster angezeigt.

Volltextsuche

Jetzt können Sie Daten sogar dann finden, wenn Sie nicht wissen, in welchen Quellen sich diese befinden. Wählen Sie dazu die Datenquellen, Gruppen von Datenquellen oder sogar einzelne Tabellen aus, die durchsucht werden sollen, und rufen Sie im Kontextmenü Full-text search [Volltextsuche] auf. Natürlich gibt es auch hierfür ein Tastenkürzel: Strg+Alt+Umschalt+F.

Sie werden ein Dialogfeld sehen, in das Sie die Zeichenfolge eingeben können. Es wird eine Liste der zu durchsuchenden Datenquellen angezeigt, und Sie können mehrere Optionen für Ihre Suche festlegen.

Außerdem können Sie sehen, welche speziellen Anweisungen DataGrip ausführt, um die Datensuche durchzuführen.

Nach dem Ausführen der Suche werden die Ergebnisse angezeigt, die Sie öffnen können.

Klicken Sie auf ein Ergebnis, um den Dateneditor zu öffnen. Der Filter ist so vordefiniert, dass nur die Zeichenfolgen angezeigt werden, in denen sich die Daten befinden. Wenn Sie die Daten nicht finden können, weil zu viele Spalten vorhanden sind, verwenden Sie die Textsuche im Dateneditor mit Strg+F.

In manchen Datenbanken können Sie die Suche auf indizierte Spalten begrenzen. Wenn Sie diesen Modus verwenden möchten, wählen Sie im Dropdown-Menü Search in die Option Only columns with full-text search indexes aus.

  • In PostgreSQL lautet die Abfrage: where col @@ plainto_tsquery('text').
  • In MySQL und MariaDB lautet die Abfrage: where match(col) against ('text' in natural language mode).
  • In Oracle werden die folgenden Indizes verwendet, sofern vorhanden: context, ctxrule, ctxcat.
  • Wenn in SQL Server Spalten mit Volltext-Indizes vorhanden sind, generiert DataGrip Abfragen mit WHERE CONTAINS(col, N'text').
  • In SQLite generiert DataGrip Abfragen mit where col MATCH 'text'.

Wenn der Modus All columns [Alle Spalten] ausgewählt ist, wird auch in Spalten gesucht, die den Operator LIKE nicht unterstützen, z. B. in Spalten vom Typ JSON. Werte in diesen Spalten werden zuvor zu Strings konvertiert.

In Apache Cassandra, DataGrip creates several queries for one table, because the OR condition isn’t supported by the database.

Dateneditor

Die Seitengröße ist leicht zu ändern

Die Seitengröße ist leicht zu ändern

Wie viele Zeilen aus der Datenbank abgerufen werden sollen, können Sie jetzt in der Symbolleiste der Ergebnismenge festlegen.

Die Ergebnis-Registerkarte kann benannt werden

Die Ergebnis-Registerkarte kann benannt werden

Eine weitere nützliche Verbesserung ist die Benennung von Ergebnis-Registerkarten. Verwenden Sie dafür einfach den Kommentar vor der Abfrage.

Die Ergebnis-Registerkarte kann benannt werden

 

Wenn nur bestimmte Kommentare als Namen für Registerkarten verwendet werden sollen, verwenden Sie in den Einstellungen das Feld Treat text as title after [Text als Titel behandeln nach], um das Präfixwort anzugeben. Dann werden nur die Wörter, die nach diesem Wort kommen, als Titel verwendet.

Datenbank-Strukturansicht

Schnelle Tabellensicherung

Schnelle Tabellensicherung

Es war schon früher möglich, Tabellen per Drag & Drop zu kopieren, aber beim Kopieren innerhalb desselben Schemas funktionierte dies nicht. Das kann sehr praktisch sein, um vor wichtigen Datenmanipulationen schnell eine Sicherungskopie der Tabelle zu erstellen. Also haben wir jetzt dafür gesorgt, dass es geht!

Schnelle Gruppenerstellung

Schnelle Gruppenerstellung

Drag & Drop funktioniert jetzt auch beim Erstellen von Gruppen im Datenbank-Explorer.
Um eine neue Gruppe zu erstellen, ziehen Sie einfach eine Datenquelle auf eine andere.
Um die Datenquelle einer vorhandenen Gruppe hinzuzufügen, legen Sie sie auf der Gruppe ab.

Live-Verbindungen

Live-Verbindungen

Ab Version 2019.2 zeigt das kleine grüne Licht an, ob eine Live-Verbindung zur Datenquelle besteht.

Aktualisierung erzwingen

Aktualisierung erzwingen

Für die Datenquelle oder das Schema ist eine neue Aktion mit dem Namen Force Refresh verfügbar. Damit werden die von DataGrip zwischengespeicherten Informationen der Datenquelle gelöscht und von Grund auf neu aktualisiert.

Filtern nach Datenquelle in Suche und Navigation

Wenn Sie im Popup GoTo nach einem Objekt suchen, enthält die Ergebnisliste manchmal viele ähnliche Objekte. Es kommt häufig vor, wenn Sie viele Spiegel wie Produktion, Staging, Test etc. verwenden.

In DataGrip 2019.2 können Sie auswählen, wo gesucht werden soll: in einer bestimmten Datenquelle oder in einer Gruppe davon.

Dasselbe gilt für Find In Path. Dies ist äußerst nützlich, wenn Sie nach Quellcode in den DDLs anderer Objekte suchen.

Programmierunterstützung

Die Seitengröße ist leicht zu ändern

Objekte aus Systemkatalogen

In nahezu jeder Datenbank gibt es einen Systemkatalog – den Ort, an dem ein relationales Datenbankverwaltungssystem Schema-Metadaten speichert, z. B. Informationen über Tabellen und Spalten, integrierte Funktionen usw.

Objekte aus diesen Katalogen werden für die Programmierunterstützung benötigt. Es ist praktisch, sie in der Codevervollständigung nutzen zu können, und Code, der sie verwendet, sollte nicht als fehlerhaft markiert werden.

Die einzige Möglichkeit, Systemkataloge in die Codierunterstützung aufzunehmen, bestand bisher darin, sie zum Datenbank-Explorer hinzuzufügen. DataGrip hat tatsächlich Informationen darüber aus der Datenbank abgerufen (übrigens immer gleich!), was einige Zeit in Anspruch genommen hat. Außerdem waren sie auch im Datenbank-Explorer sichtbar, was nicht immer notwendig ist.

Dieser Schema-Typ ist in der Schemaauswahl mit einem Blitzsymbol gekennzeichnet. Wenn Sie diese nun nicht überprüfen, wird auch DataGrip keine Introspektion dafür durchführen und anzeigen. Die Informationen über deren Objekte werden jedoch für die Programmierunterstützung genutzt. Um dies zu ermöglichen, verwendet DataGrip seine internen Daten über Systemkataloge für jede Datenbank.

Hier sind einige Beispiele für Systemkataloge in verschiedenen Datenbanken:

  • PostgreSQL: pg_catalog, information_schema
  • SQL Server: INFORMATION_SCHEMA
  • Oracle: SYS, SYSTEM
  • MySQL: information_schema
  • DB2: SYSCAT, SYSFUN, SYSIBM, SYSIBMADM, SYSPROC, SYSPUBLIC, SYSSTAT, SYSTOOLS
Die Seitengröße ist leicht zu ändern

Intention-Aktionen und Quick-Fixes

Wir haben einen Quick-Fix in den Inspektions-Tooltip integriert. Wenn DataGrip weiß, wie das Problem behoben werden kann, erfahren Sie dies, indem Sie mit der Maus über die Warnung fahren. Um das Problem zu beheben, klicken Sie einfach auf den Link in der unteren linken Ecke des Tooltips, oder drücken Sie Alt+Umschalt+Enter.

Alt+Enter funktioniert weiterhin, um die Liste aller möglichen Quick-Fixes abzurufen.

Darüber hinaus haben wir mehrere neue Inspektionen eingeführt.

Unnötige Verwendung von CASE

Wenn Sie CASE-Konstrukte verwenden, analysiert DataGrip, ob diese in besser lesbare Konstruktionen umgewandelt werden können.

In ein IF-Konstrukt:

 

In ein COALESCE-Konstrukt:

Konvertierung von GROUP BY zu DISTINCT

Konvertierung von GROUP BY zu DISTINCT

Wir haben eine weitere Intention-Aktion hinzugefügt: Jetzt können Sie GROUP BY zu DISTINCT konvertieren, wenn alle Spalten einer SELECT-Klausel in einer GROUP BY-Klausel dargestellt werden.

Mögliche Kürzung der Zeichenfolge

Mögliche Kürzung der Zeichenfolge

Die IDE erkennt die Länge der Zeichenfolge, wenn der Variablen ein Wert zugewiesen wird, und warnt Sie, wenn sie Zeichen abgeschnitten werden.

SQL-Editor

Neue Option zum Steuern des Verhaltens von Move Caret to Next Word

Neue Option zum Steuern des Verhaltens von Move Caret to Next Word

Das Standardverhalten der Aktion Move Caret to Next Word wurde geändert: DataGrip verschiebt das Caretzeichen jetzt an das Ende des aktuellen Wortes.

Möchten Sie das Verhalten der Caret-Bewegungsaktionen ändern, wechseln Sie zu Preferences/Settings | Editor | General.

Diese Aktion wird normalerweise durch Drücken von Strg+Pfeiltaste unter Windows oder Linux und Opt+Pfeiltaste unter Mac ausgeführt. Es weist auf verschiedenen Betriebssystemen ein unterschiedliches Standardverhalten auf. In DataGrip haben wir vom Windows-ähnlichen Verhalten auf das Mac-ähnliche umgestellt.

So war es vorher:

Und so ist es jetzt:

Konvertierung von GROUP BY zu DISTINCT

Aktuelle Anweisung auswählen

Eine neue Aktion Select current statement ist jetzt verfügbar. Der Zugriff ist über die Find-Aktion Strg+Umschalt+A oder auch über ein selbst zugewiesenes Tastenkürzel möglich.

Mögliche Kürzung der Zeichenfolge

Falten von großen Zahlen

Wenn Sie die Lesbarkeit großer Zahlen verbessern möchten, falten Sie sie mit dem Tastenkürzel Strg+Minus.

Andere Änderungen

  • DataGrip 2019.2 wird standardmäßig in der JetBrains Runtime 11 ausgeführt, dem nicht zertifizierten Fork von OpenJDK 11.
  • Wenn Sie in der Baumansicht Kommentare für Tabellen anzeigen möchten, gehen Sie zu View | Appearance und schalten Sie die Option Descriptions in Tree Views um.
  • [Apache Cassandra] You can now edit these types of columns: set, list, map, tuple, udt, inet, uuid, and timeuuid.
  • Die Codevervollständigung enthält jetzt neue kombinierte Elemente: IS NULL und IS NOT NULL.
  • Die Option Jump outside closing bracket/quote with Tab ist per Voreinstellung aktiviert.
  • Die Option Surround a selection with a quote or brace ist per Voreinstellung aktiviert.
  • Introduce alias wurde zum Refaktorierungs-Menü hinzugefügt.
  • DataGrip funktioniert mit PostgreSQL 12: DBE-8384.
  • Der schreibgeschützte Modus war nicht ganz konsequent umgesetzt: Wenn der Benutzer eine Update-Abfrage aus dem schreibgeschützten Modus heraus ausführen wollte, deaktivierte die IDE nur den IDE-Level-Modus, nicht jedoch den JDBC-Modus: DBE-8145. Jetzt schalten wir beide aus, damit Sie die Abfrage ausführen können, wenn das wirklich nötig ist.