Nouveautés de DataGrip 2024.3

Diff dans l'éditeur pour Texte vers SQL, Actions de l'AI Assistant pour la gestion des erreurs SQL, Améliorations pour l'interface utilisateur de la grille, et bien plus !

Fonctionnalités de l'AI Assistant

Traitement des erreurs SQL par l'AI Assistant

Nous avons implémenté des actions pratiques pour le traitement des erreurs d'exécution des requêtes SQL avec l'AI Assistant. Dorénavant, pour chaque message d'erreur, DataGrip affichera deux actions dans la partie droite du message : Explain with AI et Fix with AI.

Explain with AI ouvre le chat par IA, envoie automatiquement un prompt et vous l'explication de l'erreur fournie par l'AI Assistant.

Fix with AI génère un correctif pour l'erreur d'exécution de la requête dans l'éditeur.

Texte vers SQL : affichage d'un diff dans l'éditeur pour les résultats générés

Nous avons amélioré l'expérience de travail avec l'AI Assistant dans l'éditeur.

Désormais, lorsque vous demandez à l'AI Assistant de faire quelque chose avec un morceau de code, l'éditeur affiche un diff contenant le code d'origine et le code généré. Les suggestions de l'AI Assistant sont mis en évidence avec couleur différente et signalées par le bouton Revert dans la gouttière.

Vous pouvez également modifier vous-même la requête obtenue directement dans le diff. Vos modifications sont mises en évidence de la même façon.

Par exemple, vous pouvez demander à l'AI Assistant d'extraire davantage de données avec une requête, puis ajouter une clause ORDER BY pour le résultat généré.

Ces deux nouvelles actions fonctionnent de la même faon que les actions d'intention Fix SQL Problem Under Caret et Explain SQL Problem Under Caret.

L'utilisation de cette fonctionnalité requiert d'attacher le schéma de base de données pour la suggestion des explications et des correctifs appropriés.

Travailler avec les données

Barre d'outils de pagination flottante

Afin de rendre la pagination de la grille plus visible dans l'éditeur de données, nous avons déplacé le contrôle de la barre d'outils vers le centre de la partie inférieure de l'éditeur.

Pour replacer ce contrôle dans la barre d'outils, ouvrez les paramètres de l'IDE, allez dans la section Database | Data Editor and Viewer, faites défiler l'écran jusqu'à Position of the grid pagination control et sélectionnez Data editor toolbar.

Grille de résultats plus large dans l'éditeur

Auparavant, la largeur de la grille des résultats dans l'éditeur était limitée. Désormais, elle s'adapte automatiquement à la largeur totale de votre éditeur, ce qui vous permet de visualiser davantage de données.

Éditeur de code

Mise en évidence des occurrences du texte sélectionné

Par défaut, DataGrip met désormais automatiquement en évidence toutes les instances du texte que vous sélectionnez dans un fichier. Cela facilite le repérage des endroits où le texte sélectionné apparaît dans votre code.

Inspection pour un nombre excessif de clauses JOIN

Dans certains cas, l'exécution d'une requête contenant un nombre excessif de clauses JOIN n'est pas recommandée car cela peut nuire aux performances. L'éditeur peut maintenant identifier et mettre en évidence ce type de requêtes.

Vous pouvez activer cette inspection dans les paramètres de l'IDE. Pour ce faire, naviguez jusqu'à Editor | Inspections, développez la section SQL, puis sélectionnez Excessive JOIN count.

Prise en charge des fonctions de valeurs de tables de BigQuery

Nous avons amélioré la prise en charge des fonctions de valeurs de tables (TVF) de BigQuery. Désormais, DataGrip détecte correctement les fonctions de valeurs de tables et leurs colonnes de retour.

Connectivité

Introspection fragmentaire et actualisation intelligente pour MySQL MariaDB

DataGrip prend désormais en charge l'introspection fragmentaire.

Auparavant, l'introspecteur pouvait faire une introspection complète des schémas dans les bases de données MySQL ou MariaDB, mais ne pouvait pas actualiser les métadonnées d'un objet unique. Chaque fois qu'une instruction DDL s'exécutait dans la console et que cette exécution pouvait modifier un objet dans le schéma de base de données, l'IDE lançait une introspection complète de l'ensemble du schéma. Cela prenait du temps et pouvait souvent interrompre le workflow.

DataGrip est maintenant capable d'analyser une instruction DDL, de déterminer quels objets sont affectés par cette dernière et de n'actualiser que ces objets.

Si vous ne sélectionnez qu'un seul élément dans l'explorateur de base de données et appelez l'action Refresh, seul cet objet sera actualisé, et non pas l'ensemble du schéma comme c'était le cas auparavant.

Correctifs de bugs

  • DBE-21843 : Les premières lignes ne disparaissent plus pour les tables volumineuses.
  • DBE-20350 : La fonctionnalité de saisie semi-automatique de code Qualify object with: Database fonctionne correctement.
  • DBE-21526 : Il n'y a plus de problème avec la disponibilité des live templates contextuels dans le menu contextuel des objets de bases de données.
  • DBE-18445 : MySQL La fonction ST_SRID est maintenant prise en charge.
  • DBE-19042 : MySQL Les rôles multiples sont pris en charge dans les instructions GRANT.
  • DBE-19984: MySQL La variable système block_encryption_mode est prise en charge.
  • DBE-16521: MariaDB La prise en charge des tables temporelles dans les consoles de requêtes a été améliorée.
  • DBE-19041: MySQL MariaDB Les instructions SET ROLE et SET DEFAULT ROLE sont prises en charge.
  • DBE-14986: SQL Server La résolution des synonymes dans les appels de fonction fonctionne correctement.
  • DBE-15201: SQL Server La qualification des schémas pour la complétion des fonctions focntionne comme prévu.
  • DBE-21204 : SQL Server Le mot-clé OPTION dans les déclarations CURSOR est désormais pris en charge.
  • DBE-3771 : Oracle Une inspection pour les colonnes qualifiées dans USING a été ajoutée.
  • DBE-3772 : Oracle Une inspection pour les colonnes qualifiées dans NATURAL JOIN a été ajoutée.
  • DBE-5657 : Oracle L'autocomplétion pour les clauses PARTITION fonctionne comme prévu.
  • DBE-10459 : Oracle La saisie semi-automatique pour BEGIN est prise en charge.
  • DBE-17022 : Oracle ON COMMIT PRESERVE DEFINITION est pris en charge.
  • DBE-21014: Oracle La résolution de CURSOR déclaré dans les en-têtes de paquets fonctionne comme prévu.
  • DBE-20309 : Oracle La résolution des colonnes lors des appels de fonction fonctionne comme il se doit.
  • DBE-21006 : Oracle La résolution des colonnes pour les types d'enregistrement fonctionne comme prévu.