Source de données DDL
La génération de sources de données DDL est une autre étape du développement à long terme d'une meilleure gestion des versions de bases de données. Grâce à cette fonctionnalité, vous pouvez conserver vos fichiers DDL sous un système VCS et les régénérer à chaque fois que la structure de votre base de données est mise à jour.
Il est maintenant possible de générer une source de données DDL basée sur une source réelle. Les fichiers DDL sont créés localement et la nouvelle source de données est basée sur ces fichiers. Ainsi, vous serez toujours en mesure de régénérer ces fichiers et d'actualiser la source de données DDL.
Dans la version 2021.2, vous pouvez aussi créer des objets dans une source de données DDL via l'interface utilisateur. Les fichiers correspondants seront créés localement.
Diagrammes
D'importantes fonctionnalités ont été ajoutées aux diagrammes : les commentaires des tables sont maintenant visibles, les couleurs des tables sont affichées sur le diagramme, et vous pouvez maintenant désactiver la fusion des bords.
Éditeur de code
Recherche dans l'historique local
Si vous recherchez une révision particulière dans l'historique local, la recherche textuelle peut vous aider.
Historique local pour les sources
DataGrip suit désormais les modifications locales pour les codes sources des objets. Cela peut s'avérer particulièrement utile lorsque vous travaillez avec des procédures et des fonctions. Comme les sources de chaque objet sont stockées dans un fichier, toutes les modifications externes sont également considérées comme des modifications locales. Lorsque vous introspectez votre base de données, ce fichier est rafraîchi.
Vous pouvez utiliser la fenêtre de l'historique local pour suivre toutes les modifications apportées à une fonction ou à une procédure. Notez que tous les changements externes sont considérés comme un seul changement s'ils se sont produits dans les deux cycles précédents l'introspection.
Les noms d'onglets longs sont de retour
Après avoir reçu des commentaires d'utilisateurs qui n'aimaient pas les noms d'onglets raccourcis, JetBrains a introduit la possibilité de revenir aux noms longs. Si vous préférez les noms d'onglets longs, décochez l'option Shorten Tab Titles.
Action « Maximize Editor / Normalize Splits »
Pendant longtemps, il y avait l'action Hide All Tool Windows, qui pouvait être appelée en double cliquant sur un onglet ou en appuyant sur Maj+Ctrl+F12. De nombreux utilisateurs l'utilisaient comme une action Maximize Editor et elle fonctionnait en tant que telle. Après avoir introduit le mécanisme de fractionnement, la situation s'est compliquée. Cette action devrait-elle masquer les onglets fractionnés ou non ? JetBrains a donc fait la chose suivante :
- L'action Hide All Tool Windows ne masque plus les onglets fractionnés.
- La nouvelle action Maximize Editor / Normalize Splits agrandit l'onglet actuel, mais ne masque pas les fenêtres d'outils.
Saisie semi-automatique du code
Portée de la saisie semi-automatique:
Il est désormais possible de définir quels objets doivent être présentés dans la liste de saisie semi-automatique du code : les objets provenant uniquement du sélecteur de schéma (ou du chemin de recherche), de la portée actuelle ou de tous les schémas.
- Suggest only search path objects : seuls les objets des schémas choisis dans le sélecteur de schémas sont proposés.
- Suggest objects from current scope (paramètre par défaut) : la liste sera alimentée avec les objets que DataGrip peut correctement résoudre sans qualification – l'ensemble des objets du sélecteur de schéma, des instructions USE et du schéma par défaut.
- Suggest objects from all available schemas : la liste contiendra tous les objets de tous les schémas disponibles.
Saisie semi-automatique des champs et des opérateurs (MongoDB)
Les champs et les opérateurs sont maintenant disponibles dans la saisie semi-automatique du code pour MongoDB.
Saisie automatique pour les synonymes entre différentes bases de données (SQL Server)
La saisie automatique du code pour les synonymes entre différentes bases de données est désormais disponible.
Saisie automatique des instructions INSERT et colonnes calculées
Les colonnes calculées sont prises en compte lors de la saisie automatique des instructions INSERT ; elles ne sont pas incluses dans l'élément suggéré.
Mise en évidence du code
Prise en charge des CTE récursifs (Redshift)
Les requêtes qui utilisent des expressions de table commune récursives sont désormais correctement mises en évidence et peuvent être exécutées sans être sélectionnées.
Meilleure prise en charge des CTE (ClickHouse)
La syntaxe des expressions de table commune, lorsque le nom CTE précède le mot-clé AS, est désormais prise en charge.
Explorateur de bases de données
Dossiers distincts pour les fonctions et les procédures
Si vous activez l'option Separate Procedures and Function dans les paramètres de l'explorateur de base de données (l'icône engrenage), elle prendra immédiatement effet.
Pour SQL Server, il existe des nœuds dédiés aux fonctions scalaires et aux fonctions de table. Pour PostgreSQL, il existe un nœud pour les fonctions de déclenchement.
Nœuds distincts pour les déclencheurs, les clés et les indices
Une nouvelle option d'arborescence de la base de données, Show Constraints and Triggers in the Schema, attribue aux déclencheurs, clés et indices leurs propres nœuds individuels dans l'explorateur de base de données. Cela vous permet de trouver un objet dans un schéma en utilisant la recherche rapide. Vous pouvez aussi voir les colonnes juste en dessous du nœud de la table. Pour ce faire, assurez-vous que l'option Show Empty Groups est désactivée.
Ordre de tri naturel des objets de la base de données
Si vous désactivez l'option Sort Alphabetically dans les paramètres de l'explorateur de base de données, le tri naturel des objets sera appliqué. Voici à quoi cela ressemble lorsque Sort Alphabetically est désactivé :
...et lorsque Sort Alphabetically est activé :
Introspection
Introspection native CockroachDB
CockroachDB est entièrement pris en charge dans cette version. DataGrip ne s'appuiera plus sur l'introspection JDBC, mais utilisera l'introspection native à la place.
Ceci est beaucoup plus rapide que l'introspection JDBC. De plus, role, deftype et check constraint ne pouvaient pas du tout être introspectés dans la version précédente. La liste complète des objets qui sont maintenant introspectés comprend database, role, privilege, schema, sequence, deftype, table, view, mat view, index, column et constraints. Le fait que les partitions ne soient pas encore introspectées est un problème connu.
Clés étrangères virtuelles pour pg_catalog (PostgreSQL)
Il y a quelque temps, JetBrains a annoncé un mécanisme pour créer des clés étrangères virtuelles. JetBrains utilise maintenant ce mécanisme pour couvrir pg_catalog avec des clés étrangères virtuelles. Cela apporte plusieurs améliorations. Tout d'abord, la saisie automatique de JOIN vous aide lors de vos requêtes aux tables du système. Par ailleurs, vous pouvez naviguer en fonction des données dans les tables du système.
Tablespaces (Oracle)
JetBrains a ajouté la prise en charge des tablespaces, des fichiers de données et des fichiers temporaires. Ils sont maintenant introspectés. Ils sont également inclus dans la génération de la DDL.
Serveurs liés (SQL Server)
La prise en charge n'est pas encore totale, car les métadonnées ne sont pas disponibles pour les objets dans les serveurs liés. Les serveurs liés sont affichés dans l'explorateur de base de données, et la DDL pour leur création peut être générée.
Éditeur de données
Modèles dynamiques contextuels à partir de l'éditeur de données
Introduits dans la version précédente, les modèles dynamiques contextuels fonctionnent désormais à partir de l'éditeur de données. Si vous travaillez avec une table et que vous souhaitez l'interroger, vous pouvez facilement le faire à l'aide de l'action SQL Scripts.
Option pour le tri additif
JetBrains a récemment introduit Alt+Clic pour le tri additif. Mais si vous préférez utiliser Clic, vous pouvez personnaliser ce comportement.
Ajouter/supprimer des colonnes (MongoDB)
Vous pouvez désormais ajouter des colonnes aux collections MongoDB. Cette action vous permet d'ajouter un nouveau champ à tout document d'une collection. Delete column supprimera les données non seulement sur la page affichée, mais aussi dans l'ensemble de la collection.
Ajouter/renommer des colonnes dans les fichiers CSV
Grâce à l'éditeur de données de l'interface utilisateur, vous pouvez désormais ajouter et supprimer des colonnes dans les fichiers CSV.
Copier la requête dans la console
Lorsque vous travaillez dans un éditeur de données, vous pouvez parfois utiliser des clauses compliquées dans les champs WHERE et ORDER BY. Si vous voulez continuer à travailler avec la requête résultante, utilisez une nouvelle action, Copy Query to Console, située sous l'icône d'engrenage. Elle ouvre la requête dans la console par défaut.
Plus d'option First row dans la navigation par clés étrangères
Pour rendre la navigation plus rapide, JetBrains a supprimé l'option First row. Aucune popup ne sera affichée et vous serez amené à la table qui montre toutes les lignes référencées.
Qualification dans la navigation par clés étrangères
Si vous avez des clés étrangères pointant vers des objets d'un autre schéma et que ces objets ont les mêmes noms, ils seront affichés comme qualifiés dans l'interface de navigation des clés étrangères.
Importation/Exportation
Lien vers la table après importation
Lorsque vous terminez une importation, un lien vers la nouvelle table apparaît dans les notifications.
Navigation
Comportement de la touche Entrée dans la barre de navigation
Le comportement de la barre de navigation est maintenant plus simple : la touche Entrée développe toujours le nœud. Auparavant, la touche Entrée ouvrait les données pour les tables et les consoles pour les sources de données.
Si vous souhaitez naviguer depuis l'objet dans la barre de navigation plutôt que d'ouvrir son nœud, vous pouvez utiliser ces raccourcis de navigation :
- Ouvrir la DDL : Ctrl+B
- Ouvrir les données : F4
- Choisir dans l'arborescence de la base de données : Alt+Maj+B
Signatures dans le popup Go to
Maintenant, lorsque vous recherchez une fonction, une procédure ou un opérateur, DataGrip affiche la signature dans la fenêtre Go to. Ceci est utile lorsque vous utilisez la surcharge de manière intensive.
Général
Interface utilisateur localisée
À partir de cette version, l'interface utilisateur de DataGrip est disponible en chinois, coréen et japonais. La localisation est disponible sous forme de plugins de packs linguistiques, qui ne sont pas inclus automatiquement, mais peuvent s'installer facilement dans DataGrip.
Nouvel emplacement pour les projets
Dans DataGrip, les projets sont maintenant situés par défaut au même endroit que dans tous les autres EDI basés sur IntelliJ : dans le dossier utilisateur, dans le sous-dossier DataGripProjects.
Votre projet dans DataGrip est un ensemble de vos sources de données, de vos fichiers de console et temporaires, et de vos dossiers joints. Ils étaient auparavant stockés dans le dossier de configuration, ce qui signifie que chaque fois que vous mettiez à jour votre EDI, les projets étaient copiés avec les paramètres de l'EDI. Ceci provoquait parfois l'apparition d'une liste de sources de données vide. Ce problème a été résolu et DataGrip se comporte à présent comme les autres EDI.
Gestion des popups de la fenêtre d'outils Services
Lorsqu'une requête ne renvoie aucune donnée, il n'est pas nécessaire d'afficher la fenêtre d'outils Services qui était précédemment masquée. Vous pouvez maintenant définir quelles opérations font apparaître la fenêtre d'outils Services.
Action Show scratch files
Une nouvelle action Show Scratch Files (trouvée via Find Action: Cmd+Maj+A) affiche une liste de fichiers temporaires avec des snippets dans un popup. Elle a la même interface que le popup Recent Locations avec la recherche rapide et la suppression.
Télécharger DataGrip 2021.2