Nouveautés de DataGrip 2022.3

DataGrip 2022.3 est là ! Cette mise à jour majeure apporte de nombreuses améliorations. Regardons tout cela de plus près !

Général

Prise en charge de Redis

Nous avons implémenté la tant attendue prise en charge de Redis. Vous pouvez désormais vous connecter à Redis Single Instance, explorer les valeurs clés dans Data Viewer, écrire et exécuter des requêtes Redis à l'aide de notre assistance au codage intelligente, et plus encore.

Voici un aperçu de ce qu'elle inclut :

  • Connectivité : Redis Single Instance.
  • Introspection : introspection des bases de données et des clés, notamment la possibilité de configurer un filtre de clé par défaut pour l'outil d'introspection.
  • Explorateur de bases de données : des dossiers séparés pour les clés de différents types pour Redis v6.0 et ses versions ultérieures et un dossier avec toutes les clés pour les versions plus anciennes.
  • Exécution de requêtes : le pilote JDBC prend en charge l'exécution de la majorité des requêtes.
  • Assistance au codage : mise en évidence du code, saisie semi-automatique des mots-clés et résolution des bases de données et des clés.
  • Éditeur d'objets : renommage et suppression de clés.
  • Visionneuse de données : filtrage et mise en évidence du code JSON.

Pour en savoir plus, veuillez consulter notre article de blog.

Nouvelle interface utilisateur disponible dans les paramètres

En mai dernier, nous avons annoncé un programme de preview privé pour la nouvelle interface utilisateur de nos IDE basés sur IntelliJ. DataGrip en fait partie !

Durant cette première étape, nous voulions d'abord présenter l'apparence et l'ergonomie remaniées de nos produits à un nombre limité d'utilisateurs. Le programme de preview nous a permis de collecter et de traiter de nombreux retours d'expérience et nous sommes maintenant en mesure de proposer à tous nos utilisateurs d'essayer la nouvelle interface utilisateur.

Vous pouvez l'activer dans Settings / Preferences | Appearance & Behavior | New UI Preview, la tester et nous faire part de votre avis.

Nous cherchons toujours à rendre l'interface la plus utile et pratique possible pour les utilisateurs DataGrip. Par exemple, la création d'une configuration d'exécution Run Configuration, qui est une action cruciale dans d'autres IDE, n'est pas l'action la plus importante dans DataGrip et de vous n'avez pas forcément besoin du bouton bleu vif pour cette action. Si vous avez des idées pour personnaliser la barre d'outils supérieure, n'hésitez pas à les partager avec nous.

Nouvelle solution Settings Sync

Dans cette version, nous avons introduit une solution remaniée pour synchroniser les paramètres de votre IDE. Elle est implémentée à l'aide d'un plugin qui est intégré par défaut. La nouvelle option Settings Sync s'affichera dans les paramètres :

Nous avions auparavant deux plugins indépendants pour la synchronisation des paramètres : IDE Settings Sync et Settings Repository.

Si vous utilisiez IDE Settings Sync, vos données seront automatiquement migrées vers le nouveau plugin, vous n'aurez donc rien à faire.

Si vous utilisew Settings Repository, nous vous conseillons de continuer à utiliser votre configuration actuelle car la migration est toujours en cours. Vous recevrez une notification dans l'IDE lorsque la fonctionnalité sera prête.

Les paramètres sont stockés dans le cloud associé à votre compte JetBrains Account. Si vous utilisez plusieurs IDE basés sur IntelliJ associés au même compte JetBrains Account, vos paramètres seront automatiquement synchronisés.

Problème connu : La section Database des Settings ne peut pas être synchronisée actuellement. Cette fonctionnalité sera prochainement disponible dans l’une des mises à jour mineures de la version 2022.3.

Veuillez noter que les sources de données ne font pas partie des paramètres. Si vous souhaitez partager les sources de données, consultez ce tutoriel.

Vues virtuelles

Ce nouveau concept est virtuel et vous permet d'utiliser des vues sans les créer réellement dans votre base de données. En fait, il s'agit simplement d'une requête qui récupère le résultat et qui est stockée dans DataGrip.

 

Les vues virtuelles sont accessibles dans l'explorateur de bases de données et peuvent être exécutées avec un double-clic.

Veuillez noter que l'utilisation de vues virtuelles dans votre code SQL n'est pas possible actuellement.

Navigation dans les diagrammes

Les éléments des diagrammes sont maintenant entièrement navigables. Toutes les principales actions de navigation peuvent y être effectuées :

  • Ouvrir DDL : Ctrl/Cmd+B
  • Ouvrir les données : F4
  • Sélectionner dans l'explorateur de base de données : Alt/Opt+Maj+B
  • Modifier : Cmd/Ctrl+F6

Explorateur de bases de données

Filtre rapide

Une autre fonctionnalité très attendue est enfin disponible ! Désormais, lorsque vous utilisez la recherche rapide, vous avez également la possibilité de filtrer les objets. Tous les objets ne correspondant pas au filtre seront masqués.

Filtrage des schémas basé sur des motifs

Si vous avez beaucoup de schémas différents, vous apprécierez cette amélioration. Il est maintenant possible de choisir des bases de données ou des schémas pour l'introspection en se basant sur des modèles d'expressions régulières. Pour ce faire, cliquez sur Add Pattern et définissez une expression régulière dans le nouveau nœud. Les bases de données/schémas seront choisis en fonction de ce modèle.

L'ajout de plusieurs modèles combinera les multiplicités mais ne créera pas d'intersection.

Le nœud All se comporte différemment par rapport aux versions précédentes : il ne sélectionne pas automatiquement le schéma par défaut. Vous devez maintenant choisir entre All schemas, Default schema, ou l'application d'un filtre regexp.

Couleurs pour les sources de données globales

Dorénavant, lorsque vous définissez la couleur de la source de données globale, elle est partagée avec sa source de données.

Glisser-déposer pour les fichiers de scripts

Pour exécuter un script sur n'importe quel schéma, il vous suffit désormais de glisser-déposer votre fichier de script à partir de la fenêtre d'outil Files.

Éditeur de données

Formats pour les types de données de date et d'heure

Il est désormais possible de personnaliser l'affichage des champs de type date et heure dans l'éditeur de données. Les paramètres sont situés dans Database | Data Editor and Viewer.

 

Cette fonctionnalité est maintenant disponible pour trois types de champs :
Datetime/timestamp (avec ou sans fuseau horaire), Time (avec ou sans fuseau horaire) et Date.

Nouvel extracteur : clause WHERE

Il est désormais possible d'extraire une plage de valeurs sélectionnée dans le cadre de la clause WHERE :

  • Les valeurs d'une même colonne sont combinées avec l'opérateur OR.
  • Les valeurs d'une même ligne sont combinées avec l'opérateur AND.
  • Si les valeurs d'une même colonne sont extraites, elles sont combinées avec l'opérateur IN.

Filtrage SQL par valeurs multiples

L'action Filter by génère désormais une condition si vous sélectionnez plusieurs valeurs.

Champ de recherche textuel : remplir avec la sélection

Si vous appuyez sur Ctrl/Cmd+F pour une recherche de texte, les champs de recherche seront automatiquement remplis avec la valeur située sous le curseur. Cela correspond à la logique bien connue de l'éditeur de texte.

Les valeurs des structs s'affichent correctement Big Query

Les valeurs des structs s'affichent désormais de manière lisible : chaque valeur imbriquée apparaît dans une colonne distincte.

Travailler avec du code

Prévisualisation des actions d'intention

Vous pouvez maintenant voir instantanément les modifications qui seraient appliquées à votre requête si vous acceptiez les suggestions de l'IDE. La prévisualisation s'affiche lorsque vous ouvrez la liste des actions d'intention disponibles et que vous survolez une option.
Vous pouvez activer ou désactiver cette fonctionnalité en appuyant sur F1/Ctrl+Q lorsque la liste des actions d'intention est ouverte.

Copier-coller une ligne entière

En l'absence de sélection, appuyer sur Ctrl/Cmd+C sélectionne et copie automatiquement la ligne entière dans l'éditeur de texte. Cela fonctionnait déjà ainsi auparavant, mais nous avons maintenant complètement finalisé cette action en facilitant le collage de la ligne également. En l'absence de sélection, la ligne copiée sera collée en tant que nouvelle ligne avec un retour chariot, comme le montre cette vidéo :

Nouvelle disposition pour le générateur de schémas SQL : Per Object By Schema and Type

La nouvelle disposition s'appelle Per Object By Schema and Type. Si elle est utilisée pour générer du SQL pour l'ensemble du schéma, les fichiers qui en résultent seront placés dans des dossiers en fonction du type d'objet : tables, vues, etc.

Correctifs

  • DBE-6156 : Oracle SET ROW est maintenant pris en charge.
  • DBE-12766 : SQL Server $PARTITION est maintenant pris en charge.

Travailler avec des tables

Interface utilisateur pour les clés étrangères virtuelles

La possibilité de créer des clés étrangères virtuelles a été introduite il y a quelque temps déjà. Elles servent principalement pour :

  • La saisie semi-automatique du code de la clause JOIN.
  • L'affichage des relations virtuelles dans les diagrammes.
  • La navigation par relations de données dans l'éditeur de données.

La principale façon de les créer était d'utiliser l'action d'intention Store Relation dans la clause JOIN de votre requête. Nous nous sommes rendus compte que cela n'était pas évident à trouver et que l'ensemble de la fonctionnalité n'était pas assez intuitive. C'est pourquoi nous avons modifié plusieurs choses.

Les clés étrangères virtuelles sont désormais visibles dans l'explorateur de base de données :

Vous pouvez les créer et les déposer ici, dans l'explorateur de base de données et dans la boîte de dialogue Modify Table.

Taille des tables dans la documentation rapide MySQL PostgreSQL

La taille des tables s'affiche à présent dans la fenêtre contextuelle quick documentation pour MySQL et PostgreSQL. Pour la voir, cliquez sur Show table preview.

Connectivité

Script de démarrage pour les modèles de session

Il est maintenant possible de définir le script de démarrage pour les modèles de session. Le script sera exécuté à chaque fois qu'une nouvelle session sera créée sur la base du modèle correspondant. Cela permet par exemple à DataGrip d'exécuter l'instruction use secondary roles all pour l'introspection dans Snowflake.

Options d'authentification MongoDB

Nous avons ajouté de nombreux mécanismes d'authentification à la boîte de dialogue de connexion pour MongoDB. Pour les utiliser, mettez à niveau votre pilote vers la version 1.16.

Visualiseur des différences de schémas

Prise en charge des dépendances d'objets

Le visualisateur des différences de schémas prend désormais en compte les objets dépendants. Les plus importantes d'entre eux sont les colonnes d'identité PostgreSQL. Si les séquences associées sont différentes pour deux colonnes d'identité par ailleurs identiques, cette différence s'affichera lors de la comparaison des deux colonnes.

 

Autre exemple : un déclencheur appelant une procédure d'un autre schéma. Dorénavant, la différence entre ces déclencheurs s'affichera si les noms des routines sont différents :

Il reste deux limitations majeures connues que nous voulons mentionner à propos de la visionneuse des différences de schémas :

  • DBE-16814 : si une routine/vue fait référence à un objet depuis son corps, l'ordre correct des scripts n'est pas garanti. Par exemple, si une routine appelle une autre routine, il n'est pas garanti que cette dernière sera créée avant la première.
  • DBE-15598 : dans certains cas, la qualification des objets n'est pas correcte à l'intérieur du corps des objets sources, des expressions par défaut, etc.