{"id":663232,"date":"2025-12-03T00:51:45","date_gmt":"2025-12-02T23:51:45","guid":{"rendered":"https:\/\/blog.jetbrains.com\/?post_type=datagrip&#038;p=663232"},"modified":"2025-12-03T11:48:42","modified_gmt":"2025-12-03T10:48:42","slug":"datagrip-2025-3-migration-des-consoles-aux-fichiers-de-requete-connexion-aux-fournisseurs-cloud-niveaux-d-introspection-pour-amazon-redshift-et-bien-plus","status":"publish","type":"datagrip","link":"https:\/\/blog.jetbrains.com\/fr\/datagrip\/2025\/12\/03\/datagrip-2025-3-migration-des-consoles-aux-fichiers-de-requete-connexion-aux-fournisseurs-cloud-niveaux-d-introspection-pour-amazon-redshift-et-bien-plus\/","title":{"rendered":"DataGrip 2025.3 : migration des consoles aux fichiers de requ\u00eate, connexion aux fournisseurs cloud, niveaux d&#8217;introspection pour Amazon Redshift et bien plus !"},"content":{"rendered":"\n<p>DataGrip&nbsp;2025.3, la derni\u00e8re mise \u00e0 jour majeure de l&#8217;ann\u00e9e, est disponible&nbsp;! Regardons de plus pr\u00e8s ce que cette nouvelle version apporte.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1280\" height=\"720\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/12\/DG-social-BlogFeatured-1280x720_1.png\" alt=\"\" class=\"wp-image-663371\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-center\"><a href=\"https:\/\/www.jetbrains.com\/fr-fr\/datagrip\/download\/\" target=\"_blank\" rel=\"noopener\">T\u00e9l\u00e9charger DataGrip 2025.3 <\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Migration des consoles de requ\u00eate vers les fichiers de requ\u00eate<\/h2>\n\n\n\n<p>Auparavant, lorsque nous faisions r\u00e9f\u00e9rence aux fichiers SQL attach\u00e9s par d\u00e9faut \u00e0 une source de donn\u00e9es, nous utilisions le terme de console de requ\u00eate (<em>query console<\/em>) et leur workflow pr\u00e9sentait plusieurs probl\u00e8mes. Pour plus de coh\u00e9rence, nous avons remplac\u00e9 ce terme par celui de fichiers de requ\u00eate (<em>query files<\/em>). Ces fichiers feront d\u00e9sormais partie de votre projet dans l&#8217;IDE, dans le dossier queries situ\u00e9 dans le dossier du projet, mais vous devrez effectuer une \u00e9tape de migration au pr\u00e9alable.<\/p>\n\n\n\n<p>Il est possible de migrer les fichiers automatiquement en une seule fois, auquel cas ils seront plac\u00e9s dans le sous-r\u00e9pertoire <code>queries<\/code> de votre r\u00e9pertoire de projet par d\u00e9faut. Vous pouvez \u00e9galement personnaliser vos options de migration si vous pr\u00e9f\u00e9rez sp\u00e9cifier quelles consoles vous souhaitez migrer et leur emplacement cible. Les consoles existantes resteront dans le logiciel pendant un cycle de version suppl\u00e9mentaire. Pour en savoir plus sur les am\u00e9liorations apport\u00e9es \u00e0 ce sujet, lisez notre <a href=\"https:\/\/blog.jetbrains.com\/datagrip\/a-farewell-to-consoles\/?_gl=1*tdk229*_gcl_aw*R0NMLjE3NTk0MDM3ODkuQ2p3S0NBand4ZmpHQmhBVUVpd0FLV1B3RHIzSW1Lc1pDZ3E2blhPaWRkZTNDV0s5M3I1MHA2N2U5R1lRcnZwVUEyaGdaQU00UHAzTDdCb0NyOTRRQXZEX0J3RQ..*_gcl_au*NTE5NTYwMzA1LjE3NTQzMDM4NDU.*FPAU*NTE5NTYwMzA1LjE3NTQzMDM4NDU.*_ga*NDI1OTAyMjAyLjE3MjE5MjQ5MDQ.*_ga_9J976DJZ68*czE3NjA1NDEwNTQkbzMwJGcxJHQxNzYwNTQxMDYyJGo1MiRsMCRoMA..\">article de blog<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"570\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_query_files_migraton_dialog.png\" alt=\"\" class=\"wp-image-657485\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Connectivit\u00e9<\/h2>\n\n\n\n<p>Vous pouvez d\u00e9sormais vous <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/clouds.html\" target=\"_blank\" rel=\"noopener\">connecter \u00e0 votre compte cloud AWS, Google Cloud ou Azure<\/a>, parcourir les bases de donn\u00e9es qui y sont stock\u00e9es, et cr\u00e9er une source de donn\u00e9es pour ces bases. DataGrip conserve votre configuration de connexion de compte cloud dans la bo\u00eete de dialogue <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/data-sources-and-drivers-dialog.html#clouds\" target=\"_blank\" rel=\"noopener\"><em>Data Sources and Drivers<\/em><\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"584\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_connectivity_cloud_providers_menu.png\" alt=\"\" class=\"wp-image-657408\"\/><\/figure>\n\n\n\n<p>La fonctionnalit\u00e9 de <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/introspection-levels.html\" target=\"_blank\" rel=\"noopener\">niveau d&#8217;introspection<\/a> est maintenant disponible pour les bases de donn\u00e9es <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/amazon-redshift.html\" target=\"_blank\" rel=\"noopener\">Amazon Redshift<\/a>. Cela permet \u00e0 DataGrip d&#8217;ajuster automatiquement la quantit\u00e9 de m\u00e9tadonn\u00e9es charg\u00e9es en fonction de la taille de la base de donn\u00e9es.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"1023\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_connectivity_amazon_redshift_introspection_levels.png\" alt=\"\" class=\"wp-image-657397\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Dossiers dans l&#8217;explorateur de bases de donn\u00e9es<\/h2>\n\n\n\n<p>Nous avons remani\u00e9 les dossiers de l&#8217;<a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/database-explorer.html\" target=\"_blank\" rel=\"noopener\">explorateur de bases de donn\u00e9es<\/a> afin de vous permettre de les r\u00e9organiser de la fa\u00e7on qui vous convient le mieux. Vous pouvez \u00e9galement cr\u00e9er des dossiers vides. Les dossiers provenant de la version pr\u00e9c\u00e9dente sont automatiquement convertis vers la nouvelle configuration. La configuration des dossiers est stock\u00e9e dans <code>.idea\/db-forest-config.xml.<\/code><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"651\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_new_tree.png\" alt=\"\" class=\"wp-image-657474\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><em>Explain Plan<\/em><\/h2>\n\n\n\n<p>Les actions <em>Explain Plan<\/em> sont maintenant plus accessibles. Vous pouvez les appeler avec le bouton <em>Explain Plan<\/em> situ\u00e9 sur la <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/query-files.html#toolbar_controls\" target=\"_blank\" rel=\"noopener\">barre d&#8217;outils de l&#8217;\u00e9diteur de code<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"376\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_code_editor_explain_plan.png\" alt=\"\" class=\"wp-image-657375\"\/><\/figure>\n\n\n\n<p>Pour un <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/query-execution-plan.html\" target=\"_blank\" rel=\"noopener\">plan d&#8217;ex\u00e9cution de requ\u00eate<\/a>, l&#8217;AI Assistant peut <a href=\"https:\/\/www.jetbrains.com\/help\/ai-assistant\/use-ai-with-databases.html#explanation-for-query-plans\" target=\"_blank\" rel=\"noopener\">vous donner des explications <\/a> et <a href=\"https:\/\/www.jetbrains.com\/help\/ai-assistant\/use-ai-with-databases.html#query_optimization\" target=\"_blank\" rel=\"noopener\">vous sugg\u00e9rer des optimisations<\/a> en s&#8217;appuyant sur de nouvelles fonctionnalit\u00e9s d&#8217;IA. Les explications et les suggestions sont fournies dans le chat, o\u00f9 vous pouvez \u00e9galement poser des questions suppl\u00e9mentaires sur le plan.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"1083\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_aia_explain_plan.png\" alt=\"\" class=\"wp-image-657342\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"791\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_aia_query_optimization_action.png\" alt=\"\" class=\"wp-image-657353\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u00c9diteur de code<\/h2>\n\n\n\n<p>DataGrip conserve une trace des requ\u00eates que vous ex\u00e9cutez dans les fichiers. La <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/run-a-query.html#use_the_query_history_dialog\" target=\"_blank\" rel=\"noopener\">bo\u00eete de dialogue <em>Query History<\/em><\/a> qui les stocke peut \u00eatre ouverte dans n&#8217;importe quel onglet de l&#8217;\u00e9diteur de code si le fichier dispose d&#8217;une source de donn\u00e9es attach\u00e9e. D\u00e9sormais, vous pouvez aussi supprimer des enregistrements de la liste depuis cette bo\u00eete de dialogue.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"867\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_code_editor_delete_record.png\" alt=\"\" class=\"wp-image-657364\"\/><\/figure>\n\n\n\n<p>La fonctionnalit\u00e9 de base de donn\u00e9es <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/snowflake.html\" target=\"_blank\" rel=\"noopener\">Snowflake<\/a> prend d\u00e9sormais en charge les <a href=\"https:\/\/docs.snowflake.com\/en\/sql-reference\/snowflake-db-classes\" target=\"_blank\" rel=\"noopener\">\u0441lasses<\/a>, avec notamment les introspections, ainsi que le DDL et la syntaxe des appels de m\u00e9thode.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"1114\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_code_editor_snowflake_classes.png\" alt=\"\" class=\"wp-image-657386\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Travailler avec les donn\u00e9es<\/h2>\n\n\n\n<p>L&#8217;<a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/database-explorer.html\" target=\"_blank\" rel=\"noopener\">explorateur de bases de donn\u00e9es<\/a> affiche d\u00e9sormais correctement les cl\u00e9s <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/redis.html\" target=\"_blank\" rel=\"noopener\">Redis<\/a> hi\u00e9rarchiques, conform\u00e9ment \u00e0 un s\u00e9parateur de cl\u00e9s que vous pouvez sp\u00e9cifier dans les param\u00e8tres de la source de donn\u00e9es. Par exemple, les cl\u00e9s avec des noms tels que <code>user::::<\/code>, dans lesquelles <code>::<\/code> est un s\u00e9parateur, ont des vues comme dans l&#8217;illustration suivante :<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"891\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_data_redis_keys.png\" alt=\"\" class=\"wp-image-657441\"\/><\/figure>\n\n\n\n<p>Pour <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/microsoft-sql-server.html\" target=\"_blank\" rel=\"noopener\">Microsoft SQL Server<\/a>, nous avons introduit la prise en charge des index columnstore clusteris\u00e9s et non clusteris\u00e9s, ainsi que les types de donn\u00e9es <a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/t-sql\/data-types\/vector-data-type\" target=\"_blank\" rel=\"noopener\"><code>VECTOR<\/code><\/a> et <a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/t-sql\/data-types\/json-data-type\" target=\"_blank\" rel=\"noopener\"><code>JSON<\/code><\/a>. Vous pouvez les utiliser dans les bo\u00eetes de dialogue <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/create-and-modify-dialogs.html\" target=\"_blank\" rel=\"noopener\"><em>Create<\/em> et <em>Modify<\/em><\/a>. Les types de donn\u00e9es sont \u00e9galement disponibles dans les suggestions de saisie semi-automatique du code, et ils sont mis en \u00e9vidence correctement dans l&#8217;\u00e9diteur de code.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"1031\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_data_columnstore_indexes.png\" alt=\"\" class=\"wp-image-657419\"\/><\/figure>\n\n\n\n<p>Nous avons simplifi\u00e9 l&#8217;acc\u00e8s \u00e0 l&#8217;action qui efface les <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/tables-filter.html#use_the_local_filter\" target=\"_blank\" rel=\"noopener\">filtres locaux<\/a> d&#8217;une grille. Pour effacer le filtre local de toutes les colonnes, cliquez sur <em>Table Result Local Filter<\/em> dans la <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/data-editor-and-viewer.html#toolbar_controls\" target=\"_blank\" rel=\"noopener\">barre d&#8217;outils de l&#8217;\u00e9diteur de donn\u00e9es<\/a>, puis sur <em>Clear Local Filter For All Columns<\/em>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"565\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_data_enable_local_filter.png\" alt=\"\" class=\"wp-image-657430\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Am\u00e9liorations de l&#8217;interface et de l&#8217;exp\u00e9rience utilisateur<\/h2>\n\n\n\n<p>La nouvelle version du menu principal permet de trouver plus facilement les actions les plus utiles. Nous avons restructur\u00e9 chaque section du menu et y avon remis de l&#8217;ordre.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1270\" height=\"1129\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_main_menu_redesign.png\" alt=\"\" class=\"wp-image-657463\"\/><\/figure>\n\n\n\n<p>De plus, le <a href=\"https:\/\/www.jetbrains.com\/help\/datagrip\/2025.3\/user-interface-themes.html\" target=\"_blank\" rel=\"noopener\">th\u00e8me d&#8217;interface<\/a> <em>Islands<\/em>, introduit plus t\u00f4t cette ann\u00e9e, est devenu le th\u00e8me par d\u00e9faut.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1844\" height=\"1268\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/11\/dg_20253_islands_dark.animated.gif\" alt=\"\" class=\"wp-image-657452\"\/><\/figure>\n\n\n\n<p>Si vous souhaitez effectuer la mise \u00e0 niveau vers DataGrip 2025.3 ou si vous avez des questions ou des suggestions, voici quelques liens utiles :<\/p>\n\n\n\n<ul>\n<li><a href=\"https:\/\/www.jetbrains.com\/fr-fr\/datagrip\/download\/?section=windows\" target=\"_blank\" rel=\"noopener\">T\u00e9l\u00e9charger DataGrip 2025.3<\/a>.<\/li>\n\n\n\n<li>Consulter notre <a href=\"https:\/\/www.jetbrains.com\/fr-fr\/datagrip\/whatsnew\/\" target=\"_blank\" rel=\"noopener\">page Nouveaut\u00e9s<\/a> pour voir la liste compl\u00e8te des am\u00e9liorations.<\/li>\n\n\n\n<li>Contactez-nous sur <a href=\"https:\/\/twitter.com\/datagrip\" target=\"_blank\" rel=\"noopener\">X<\/a>.<\/li>\n\n\n\n<li>Signaler tout bug <a href=\"https:\/\/youtrack.jetbrains.com\/issues\/DBE\" target=\"_blank\" rel=\"noopener\">dans notre outil de suivi<\/a>.<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>L&#8217; \u00c9quipe DataGrip<\/p>\n\n\n\n<p><em>Auteur de l&#8217;article original en anglais<\/em> :<\/p>\n\n\n    <div class=\"about-author \">\n        <div class=\"about-author__box\">\n            <div class=\"row\">\n                <div class=\"about-author__box-img\">\n                    <img decoding=\"async\" src=\"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2025\/07\/richie_mitish.png\" width=\"200\" height=\"200\" alt=\"Richie Mitish\" loading=\"lazy\"  class=\"avatar avatar-200 wp-user-avatar wp-user-avatar-200 photo avatar-default\">\n                <\/div>\n                <div class=\"about-author__box-text\">\n                                            <h4>Richie Mitish<\/h4>\n                                                        <\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n","protected":false},"author":813,"featured_media":663383,"comment_status":"closed","ping_status":"closed","template":"","categories":[89,907],"tags":[91],"cross-post-tag":[8851],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/datagrip\/663232"}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/datagrip"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/types\/datagrip"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/users\/813"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/comments?post=663232"}],"version-history":[{"count":10,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/datagrip\/663232\/revisions"}],"predecessor-version":[{"id":664407,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/datagrip\/663232\/revisions\/664407"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media\/663383"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media?parent=663232"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/categories?post=663232"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/tags?post=663232"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/cross-post-tag?post=663232"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}