DataGrip Changelog

What's new in DataGrip 2024.1 Build 241.14024.11 EAP

Mar 6, 2024
  • Simplification of sessions:
  • Over the last few years, we've received tons of feedback from users who say that they don't understand the concept of sessions and that this functionality has contributed significantly to DataGrip's learning curve. Here are several examples:
  • The project-first and separate-console-session model is way over the top overkill. This model makes opening and executing a simple SQL file a real chore. If I just want to open and execute a script I have to first create a project, then add the file to the project, then open a console, then open a session, and then attach the file to the session. What a gigantic PAIN.
  • Coming from SQL Server Management Studio, DataGrip's UI is a lot more complex. In SSMS you basically just have servers, queries and results. In DataGrip there's sessions and consoles and scratch files, etc., etc., making the tool much less intuitive for new users.
  • Some of the way the UI works is clunky and non-obvious. When I have to select a console to run a script on, it's not entirely clear to me why I have to do this or what the ramifications of the selection are. This shouldn't really be the default behavior.
  • In DataGrip, "session" is a technical term that refers to the container for a connection. In other words, connections can be established, stopped, and re-established within one session. For each connection, there is one session.
  • The ability to attach sessions is a powerful mechanism, but in the majority of cases, users just need to set the context (data source and database or schema) for the queries to be run.
  • Starting from version 2024.1, users will no longer need to manually choose which session to run queries in, and this will be the case for all types of queries. Sessions are still there under the hood, but you won't need to worry about them.
  • Let's take a deep dive into how this change affects DataGrip's main use cases.
  • Attaching and switching data sources
  • To attach a file, you now simply need to select the data source, rather than the session. After selecting the data source, you choose the schema.
  • Switching sessions:
  • The Switch Session action now only appears in the client context menu in the Services tool window. It allows you to switch the session only within the current data source.
  • Running functions:
  • You no longer need to select a session before launching a function. In the function launch window, a Run From option allows you to select the console or file from which the function will be launched.
  • Record view:
  • You can now focus on one record in the data editor. To open a record view, use the shortcut Ctrl/Cmd+Shift+Enter or the Show Record View button on the toolbar:
  • A record view will open in the side panel, where the value editor and aggregate view are located:
  • The cells in record view are editable if they are editable in the main grid.
  • Code completion: custom symbols to accept suggestions
  • We've added to specify which symbols you will use to accept code completion suggestions, allowing you to write SQL even faster.
  • To make this work, you need to enable two options.
  • This one:
  • And this one:
  • This feature can be especially useful when using operators:

New in DataGrip 2023.3 Build 233.11799.10 EAP 4 (Nov 10, 2023)

  • DataGrip 2023.3 EAP 4:
  • Since the release of DataGrip 2023.3, it's been possible to visualize data following our integration of the Lets-Plot library, with its basic no-code data visualization possibilities. The visualization is available on all three types of grids:
  • Main tab: When you open the table, view, or CSV file, the plot is displayed in split mode.
  • Result tab: When you observe the result of a query in the Services tool window, the plot can be displayed instead of the grid.
  • In-editor results: It's possible to display the plot instead of the grid.
  • Known issue: The settings for the visualization are not saved, which means that if you reopen the grid, the plot will be in its default state.
  • This feature is still under development, and we would like to hear your feedback! You can provide this using the feedback form, by creating an issue in our tracker, or by writing directly to [email protected].
  • New import functionality:
  • We have spent a significant amount of time reworking our import functionality, but we believe it was worth it for the following reasons:
  • It was the last chapter in the big transition to our generated Modify Object UI, which is described in detail here.
  • The feature now includes the functionality to import to several targets.
  • It is now possible to edit several things at once. For example, you can change formats or encode for several files, changing the schema for several targets.
  • Some features to highlight:
  • Mapping:
  • The default target entity is called mapping. Here, you can define the target table and map the file columns with the columns of the target table. If you need to edit the table itself, press the Edit button:
  • The table will appear in the tree UI on the right. This UI completely repeats the Modify Object UI: here you can do any kind of manipulations with the table and its objects.
  • Auto-generate table names:
  • This button automatically generates the table name from the source file. It can be useful if you renamed the table and want to revert to its default name.
  • Simplify column names:
  • This action can come in handy when the original column names contain spaces.
  • Reverting to the old UI:
  • We understand that this rework is a huge change that may be inconvenient for some of our users. We would appreciate any feedback you can share with us to help us understand how we can improve the new UI, making it both more powerful and clearer for all use cases.
  • If, for any reason, you wish to revert to the old UI, you can use this option:
  • This option will be removed only when we have processed all the negative feedback we have received about the new UI.
  • DynamoDB support:
  • We are pleased to announce that the 419 people who voted for that ticket didn't do so in vain. Support for DynamoDB is now coming to JetBrains IDEs!
  • What has been implemented:
  • Data can be viewed via DataGrip's data viewer
  • PartiQL for DynamoDB support in the code editor
  • Tables with keys and indexes are now introspected

New in DataGrip 2023.3 Build 233.11555.17 EAP 3 (Nov 6, 2023)

  • DataGrip 2023.3 EAP 3 is Out!
  • [Oracle] Support for functions returning ref cursors:
  • We've closed the ticket DBE-6807: Database console should show results from PL/SQL functions (Oracle) that return cursors.
  • Starting from 2023.3, the support for ref cursors has improved:
  • If the function you run returns a result containing only one ref cursor, DataGrip immediately navigates to the result from the ref cursor.
  • In more complex cases where the result contains several ref cursors or something other than a ref cursor, DataGrip shows the main result and gives you the opportunity to view results from other ref cursors. From the cell with the ref cursor, you can go to the corresponding result set (Enter/Double-click) and vice versa (Ctrl+Cmd+B)
  • [SQL Server] Support for import/export tables via BCP
  • We've added the support for the BCP tool, which lets you export and import tables in SQL Server.
  • Important fixes:
  • DBE-625: We fixed a bug with the qualification of custom types in Run Function
  • DBE-625: We fixed the focus jumping to the result after Run Function
  • DBE-19097: Number formats are now applied after Refresh

New in DataGrip 2023.3 Build 233.10527.14 EAP 2 (Oct 23, 2023)

  • The second Early Access Program version for DataGrip 2023.3 is here. Let's take a look at what's inside this EAP build.
  • Introspection scheduler
  • It's now possible to set an introspection interval for each data source.
  • [Redshift] Support for materialized views:
  • Materialized views in Redshift are now introspected and displayed in a dedicated node in the Database Explorer.
  • Customizable number formats in the data editor
  • There is now much greater flexibility in how you can see numbers in the data editor. Most significantly, you can specify decimal and grouping separators. Other options include the ability to define how infinity and NaN will be rendered.
  • [SQL Server] Support for new objects:
  • New objects are supported in SQL Server:
  • Partition functions and partition schemes: DBE-11948
  • Partitions and related table/index properties: DBE-4460

New in DataGrip 2023.3 Build 233.9102.70 EAP (Oct 5, 2023)

  • DataGrip 2023.3 EAP is Open:
  • We're starting our 2023.3 Early Access Program (EAP) and, as usual, we invite you to try the latest features and improvements we're adding to DataGrip ahead of the official release. Let's take a look at what's inside the first EAP build.
  • [Oracle]: Introspection level defaults:
  • DataGrip takes a long time to introspect schemas in Oracle because Oracle catalogs are very slow. To address this problem, introspection levels were introduced.
  • By default, the highest level was selected, which meant that selected schemas immediately began to be introspected at the third level, which was slow. Also, some users were unaware that the introspection level setting existed at all.
  • In 2023.3, DataGrip prioritizes the user experience and performance over the fullness of functionality. The default value for the introspection level now is Auto Select. Our new approach is to set the default introspection level for each schema based on the schema type and number of objects.
  • [SQLite] Warning if using WSL path
  • Unfortunately, it is impossible to work with the SQLite database located under a WSL path. The reason is that WSL doesn't respect the SQLite file locking mechanism. For now, the only available solution for DataGrip is to show a warning in that particular case.

New in DataGrip 2023.2 Build 232.8660.111 (Jul 23, 2023)

  • USER INTERFACE:
  • New UI:
  • The new UI is now enabled by default.
  • First, for the Light theme, we've introduced the alternate Light with Light Header option, featuring matching light colors for window headers, tooltips, and notification balloons.
  • Also, exclusively in DataGrip, all the toolbar icons have been moved to the header. The list of icons here is fixed by default: Database Explorer, Services, and Files.
  • Improved main toolbar customization:
  • We’ve also expanded the customization options for the whole toolbar. You can now use a dropdown menu to quickly choose actions that you want to add to the other parts of this toolbar.
  • To do so, right-click on any widget, select Add to Main Toolbar, and explore the available options.
  • Colored project headers in the new UI:
  • This version also includes colored headers to simplify navigation between several open projects. You can now assign a unique color and icon to each of your projects, making it easier to distinguish them in your workspace.
  • Headers now come with predefined colors by default, but you can customize them. To set a new color for your project, right-click on a header and access the context menu. Select the Change Toolbar Color option and choose your desired color. To disable this feature, simply deselect the Use Project Colors in Toolbar option in the context menu.
  • New UI for schema migration dialog:
  • We’ve also reworked the UI for schema migration functionality.
  • The main difference is that an object is now placed on the same line in both parts of the dialog, making it easier to understand which objects are going to be added, removed, or changed in the target schema.
  • AI ASSISTANT:
  • Keeping up with the whole world, JetBrains IDEs now feature the powerful JetBrains AI service. It incorporates the capabilities of OpenAI along with JetBrains’ own smaller models. For now, the functionality is available via a plugin: Install JetBrains AI Assistant from JetBrains Marketplace.
  • AI Chat:
  • The main functionality currently available in DataGrip is AI Chat.
  • Things to know:
  • You’ll need to be logged into the JetBrains AI service using your JetBrains Account.
  • For now, AI Chat doesn't know anything about your databases or projects.
  • AI Actions:
  • Our famous Alt+Enter menu, where you can find numerous actions to improve your code, is now enhanced with the AI Actions... submenu.
  • There are three actions available:
  • Explain code
  • Suggest refactorings
  • Find potential problems
  • CONNECTIVITY:
  • Support for Redis Cluster:
  • Redis:
  • You can now connect to Redis Cluster and have the same feature set as with standalone Redis.
  • When connecting to a cluster, jdbc:redis:cluster: must be entered before the desired URL. Then, make sure to choose the appropriate connection type to successfully connect.
  • If SSH tunneling is required for the connection to the cluster, then the hosts and ports for all nodes in the cluster should be indicated in the URL.
  • SUPPORT FOR EXTERNAL DATABASES AND DATASHARES:
  • The shared databases and their contents are now introspected, as are the datashares that these databases are created on.
  • Also:
  • Shared databases and datashares can be modified with Ctrl/Cmd + F6.
  • Last but not least, all the related statements are supported in the SQL editor.
  • MORE SSL OPTIONS:
  • There are more options for connecting with SSL certificates.
  • Now, you can explicitly set which truststore DataGrip will use for SSL CA files:
  • HTTP proxy:
  • HTTP proxy settings are now also used in the remote development process. This means that if the driver also uses the HTTP proxy, you can configure it in the settings and the connection will work.
  • Time stamp of the last refresh:
  • With the new Show Schema Refresh Time setting, you'll know when the schema was last refreshed. The setting is currently not available for СlickHouse, Redis, Apache Cassandra, and Apache Hive.
  • DATA EDITOR:
  • Time zones:
  • With the new setting, you can set the time zone in which datetime values should be displayed:
  • Preview in settings:
  • Now, when you change any settings in Settings/Preferences | Appearance & Behavior | Data Editor and Viewer, a preview is available:
  • Show all columns:
  • A new Show all columns action is available from the header context menu. It helps you find any columns that you may have hidden before.
  • NAVIGATION:
  • Text search in Search Everywhere:
  • The Search Everywhere functionality, primarily utilized for searching through database objects, files, actions, and settings, now includes text search capabilities similar to Find in Files.
  • With this enhancement, text search results are displayed when there are few or no other search results available for a given query. The feature is enabled by default and can be managed in Settings/Preferences | Advanced Settings | Search Everywhere.
  • CODING ASSISTANCE:
  • New settings for qualifying objects:
  • You can now separately specify not only the objects to qualify identifiers with but also where the qualification should happen.
  • The whole block of settings has been moved to the Code Completion section.
  • Syntax highlighting in inspection descriptions:
  • In Settings/Preferences | Editor | Inspections, we’ve implemented syntax highlighting for code samples, which facilitates comprehension of any given inspection and its purpose.
  • FILES TOOL WINDOWS:
  • Sort by modification time:
  • It's now possible to sort files by the modification time in the Files tool window.
  • Open folders with a single click:
  • You can open and close folders with a single click and this setting has now been added.
  • Hiding scratches and consoles:
  • It's also possible to hide the Scratches and Consoles folder if you don't need them.
  • OTHER:
  • WSL support for dump tools:
  • The integration with MySQL and PostgreSQL dump tools now supports using WSL paths
  • Modify UI: list of objects of the same kind:
  • In the Modify Table dialog, putting the caret on the family node will open the table view, which helps you inspect similar objects.
  • The path to the file is specified in the Windows format, but when creating a process, DataGrip will automatically replace it with the Linux format.

New in DataGrip 2023.2 Build 232.8660.5 EAP 2 (Jul 6, 2023)

  • NEW:
  • Support for Redis Cluster.
  • New UI for schema migration dialog.
  • Lots of new statements are supported: mostly in Redshift, MariaDB, and Oracle.
  • DBE-17327: [PostgreSQL] Full-Text search works with the CITEXT column.

New in DataGrip 2023.2 Build 232.7295.8 EAP 1 (Jun 7, 2023)

  • New UI:
  • The new UI is now enabled by default for this EAP cycle. Exclusively in DataGrip, all the toolbar icons have been moved to the header:
  • To configure which buttons you want to see in the header, click the … icon:
  • If you don't like the way that looks and would rather use the toolbar stripes, turn this setting off from the Find Action (Ctrl/Cmd+Shift+A):
  • Connectivity:
  • SSL:
  • There are now more options for connecting with SSL certificates. Now you can explicitly set which trust store DataGrip will use for SSL CA files:
  • Another improvement has to do with JKS KeyStore files. Now you can pass *.jks files instead of a CA Certificate and a Client Key.
  • HTTP proxy:
  • HTTP proxy settings are now also used in the remote development process. This means that if the driver also uses the HTTP proxy, you can set it in the settings and the connection will work.
  • Coding assistance:
  • We've added many new settings for qualifying objects. Now you can separately detect not only the objects to qualify identifiers with, but also where the qualification should happen.
  • The whole block of settings has been moved to the Code Completion section.
  • WSL support for dump tools:
  • The integration with MySQL and PostgreSQL import/export tools now supports using WSL paths
  • The path to the file is specified in the Windows format, but when creating a process, DataGrip will automatically replace it with the Linux format.
  • Modify Object:
  • In the Modify Table dialog, putting the caret on the family node will open the table view, which helps you inspect similar objects.
  • Data editor:
  • Time zones:
  • With the new setting, you can now set the time zone in which the datetime value should be displayed
  • Show all columns:
  • A new Show all columns action is now available from the header context menu. It helps you find any columns that you may have hidden before.
  • Preview in settings:
  • Now, when you change any settings in Settings/Preferences | Appearance & Behavior | Data Editor and Viewer, a preview is available.
  • [Redshift] Support for External Database/Datashare:
  • The shared databases and their contents are now introspected. The datashares that these databases are created on are also introspected.
  • Shared databases and datashares can be modified with Ctrl/Cmd + F6.
  • Last but not least, all the related statements are supported in the SQL editor.
  • Fixes and improvements:
  • DBE-13734 [MySQL] SELECT INTO is supported inside stored procedures.
  • DBE-17005 [MySQL] The JSON_TABLE function is supported.
  • DBE-15065 [Oracle] Code completion works for synonyms.
  • DBE-9175 [Oracle] The XMLELEMENT function is supported.
  • DBE-16823 [ClickHouse] IPv6 values are displayed correctly.
  • DBE-7474 [H2] There are no more false positives for the unresolved variable inspection.

New in DataGrip 2023.1.1 Build 231.8770.3 (Apr 18, 2023)

  • Working with code:
  • DBE-4469: We fixed the problem where SQL Formatter didn’t apply the right style for a subquery in the EXISTS clause. Now it works as expected.
  • DataGrip can also add a space between the EXISTS keyword and the left parenthesis which can be toggled with a new setting. If you want to preserve the old Formatter behavior (without the space), you can change the Space after keyword setting to No in Preferences | Editor | Code Style | SQL (Queries tab).
  • DBE-14440: We fixed the bug with saving style settings. If you have configured a special style for SQL2016 and the Inherit general SQL style checkbox in Preferences is not enabled, then you will need to reconfigure it.
  • DBE-15973 BigQuery: The WINDOW clause is now supported.
  • DBE-9219 ClickHouse: Сase settings when completing exact-case names are now ignored.
  • DBE-14796 MySQL: Problems with LAG and LEAD functions have been fixed.
  • DBE-16311 MySQL: FOR UPDATE in nested queries is now supported.
  • DBE-12139 MySQL: The ENCRYPTION syntax is now supported.
  • DBE-13186 Microsoft SQL Server: Inspections no longer erroneously report extra code.
  • DBE-11946 PostgreSQL: The issue with Place constraints was fixed.
  • DBE-6276 PostgreSQL: DDL navigation to security policies now works as expected.
  • DBE-17490 PostgreSQL: The SQL generator now quotes EXCLUDE constraints correctly.
  • DBE-11727, DBE-11500 BigQuery: Alias resolution in UNNEST queries now works correctly.
  • DBE-17291, DBE-17449 ClickHouse: EPHEMERAL columns, INTERSECT, and EXCEPT clauses are now supported.
  • DBE-13506 MongoDB: The bug with broken SQL completion for nested properties has been fixed.
  • Database explorer:
  • DBE-17263: Data source content statistics are again displayed in the Quick Documentation popup.
  • DBE-17166: Renamed folders in the database explorer no longer disappear.
  • DBE-10812 PostgreSQL: The Drop context menu command now works as expected.
  • Introspection:
  • Oracle: We’ve implemented several improvements to speed up introspection on Level 1, especially when the fast internal catalog is used.
  • Check whether you have already been granted the SELECT_CATALOG_ROLE and the SELECT ANY DICTIONARY permission. This gives you access to the Oracle internal catalog and makes introspection much faster, because Oracle conventional catalogs are quite slow.
  • Learn more about Oracle introspection.
  • DBE-12578 Oracle: Cross schema database triggers are now supported. You can create a trigger X in schema A to table E in schema B, and it will be shown in schema B under the host table E.
  • DBE-6986 MySQL: The ROW_FORMAT clause/syntax is now supported.
  • DBE-10603 Microsoft SQL Server: Quick Definition now works as expected.
  • DBE-9087 PostgreSQL: When using the REFERENCING clause, the trigger’s DDL is generated correctly.
  • DBE-12404 Db2: We fixed an issue with interrupting object introspection. If the user permissions did not allow retrieving a list of database users, the rest of the database objects were not loaded either. Now everything except the list of users will be loaded.
  • DBE-17330 MySQL: The DDL of a table is refreshed after changing a comment in the Modify dialog.
  • DBE-15555 Redshift: We fixed a performance issue. Introspection time is now significantly decreased.
  • Connectivity:
  • DBE-16417 Microsoft SQL Server: Current schema detection now works for any database.
  • DBE-11012 SQLite: The SQLite native library is now unpacked to the system folder.
  • DBE-7466 Microsoft SQL Server: The issue with connecting via pg_bouncer has been fixed.
  • Object editor:
  • DBE-16393: We’ve added a source editor to the Modify view.
  • DBE-17329 PostgreSQL: Virtual view creation is now also available in read-only mode.
  • Data editor/viewer:
  • DBE-3572: We’ve added an Alternate row colors setting for results tables. When the checkbox is enabled, rows will have alternating colors.
  • DBE-16250: There are no more empty spaces in in-editor results, as the table now adjusts its height to match the height of the results.
  • DBE-17434: The correct font color is used in the data editor header.
  • DBE-17292 PostgreSQL: The Quick Doc window doesn't freeze anymore when counting rows.
  • Support request: Image preview works correctly in the value editor.
  • DBE-16576 PostgreSQL: It's possible to update a value in a view with the ENUM column.
  • DBE-14722 Oracle: JSON columns are now supported.
  • DBE-14303 BigQuery: The precision for milliseconds in the TIMESTAMP values is no longer lost.
  • DBE-13329 MongoDB: We added the Change Default action to configure the default page size.
  • Query console:
  • DBE-14074: Named parameters are detected correctly.
  • DBE-10555: Whenever you copy and paste something, the IDE now correctly analyzes the selection (instead of the cursor position).
  • DBE-17362: The schema switcher works properly in the new UI.
  • DBE-12109 Oracle: Semicolons are no longer omitted in Oracle Aggregate Functions.
  • DBE-16871 BigQuery: The Unexpected value error no longer pops up when previewing a table.
  • DBE-17479: Failing queries with the Read access is allowed from inside read-action (or EDT) only notification in the Query console has been fixed.
  • DBE-12787, DBE-12109 Oracle: The CREATE PROCEDURE and CREATE FUNCTION now end with ";" – as expected.
  • MongoDB: Loss of values in IN (...) if there are more than 10 has been fixed.
  • SQL Resolve:
  • DBE-16831: A setting to specify the default resolve mode used in the console has been added to Preferences | Database | Query execution | Other.
  • DBE-5497 Oracle: We fixed a few problems with Oracle collection methods:
  • Public synonyms are now correctly placed in the PUBLIC schema.
  • Recursive references to nested routines are resolved correctly.
  • Cursor parameter references qualified by a cursor name are resolved correctly.
  • Incorrect usages of %TYPE are reported as warnings.
  • DBE-12772 Oracle: We fixed the resolution of standard attributes for collection types (for example, COUNT).
  • DBE-12758 Oracle: Type attributes are now supported.
  • DBE-11949 Oracle: Named arguments in type constructor calls are resolved correctly.
  • DBE-16452 Oracle: Shortcut navigation now works for packages.
  • Navigation and search:
  • DBE-12015 Oracle: When navigating to a routine, you are now taken by default to its implementation instead of its header.
  • Diagrams:
  • DBE-17137: We fixed a bug where the IDE would show the Explain Plan diagram only for the first of several queries.
  • DBE-16238: Errors no longer appear while saving a diagram.
  • SQL Generation:
  • DBE-17229: The Schema diff viewer now works properly – previously it opened empty if there were database or server objects included.
  • Microsoft SQL Server, PostgreSQL, Db2: You can now use the Specify next value for sequences option to control the behavior of sequences that have a start value.
  • If the Specify next value for sequences option is not enabled, DataGrip generates the DDL of the sequence, adding the start value to the START WITH start_value.
  • When the Specify next value for sequences option is enabled, DataGrip adds the next value that the sequence should have to the DDL, with a few differences for the following databases:
  • Microsoft SQL Server: Instead of the sequence start value, the next sequence value is specified in the RESTART WITH clause in the CREATE and ALTER statements.
  • PostgreSQL: Instead of the sequence start value, the next sequence value is specified in the START WITH clause in the CREATE statement. The start value is specified in the START WITH clause, and the next value is in the RESTART WITH clause in the ALTER statement.
  • Db2: Instead of the sequence start value, the next sequence value is specified in the START WITH clause in the CREATE statement. The next value is specified in the RESTART WITH clause in the ALTER statement (changing the start value is not allowed in Db2).

New in DataGrip 2023.1 Build 231.8109.78 EAP 3 (Mar 20, 2023)

  • INTROSPECTION:
  • [Oracle]: We've implemented several improvements to speed up the introspection on Level 1. Here are a few tips to speed up your work, especially if you're working with a large number of schemas and many database objects:
  • Switch the introspection level to Level 1, where DataGrip introspects only the names and types of objects.
  • On introspection Level 1, you can click Refresh selected object to edit a specific object or view its sources.
  • Check if you have the SELECT_CATALOG_ROLE and the SELECT ANY DICTIONARY permissions, which grant you access to the Oracle internal catalog. This makes introspection much faster.
  • Code highlighting
  • DBE-11727, DBE-11500 [BigQuery]: Alias resolution in UNNEST queries now works correctly.
  • DBE-17291, DBE-17449 [ClickHouse]: EPHEMERAL columns, INTERSECT, and EXCEPT clauses are now supported.
  • SCHEMA DIFF:
  • [Microsoft SQL Server, PostgreSQL, Db2]: You can now use the Specify next value for sequences option to control the behavior of sequences that have a start value
  • DataGrip 2023.1 Quality release EAP 3 is Out:
  • Datagrip 2023.1 EAP 3 is out! Here are the new fixes in this version:
  • INTROSPECTION:
  • [Oracle]: We've implemented several improvements to speed up the introspection on Level 1. Here are a few tips to speed up your work, especially if you're working with a large number of schemas and many database objects:
  • Switch the introspection level to Level 1, where DataGrip introspects only the names and types of objects.
  • On introspection Level 1, you can click Refresh selected object to edit a specific object or view its sources.
  • Check if you have the SELECT_CATALOG_ROLE and the SELECT ANY DICTIONARY permissions, which grant you access to the Oracle internal catalog. This makes introspection much faster.
  • Code highlighting:
  • DBE-11727, DBE-11500 [BigQuery]: Alias resolution in UNNEST queries now works correctly.
  • DBE-17291, DBE-17449 [ClickHouse]: EPHEMERAL columns, INTERSECT, and EXCEPT clauses are now supported.
  • Schema Diff:
  • [Microsoft SQL Server, PostgreSQL, Db2]: You can now use the Specify next value for sequences option to control the behavior of sequences that have a start value.
  • If the Specify next value for sequences option is not enabled, DataGrip generates the DDL of the sequence, adding the start value to the START WITH start_value.
  • When the Specify next value for sequences option is enabled, DataGrip adds the next value that the sequence should have to the DDL, with a few differences for the following databases:
  • [Microsoft SQL Server]: Instead of the sequence start value, the next sequence value is specified in the RESTART WITH clause in the CREATE and ALTER statements.
  • [PostgreSQL]: Instead of the sequence start value, the next sequence value is specified in the START WITH clause in the CREATE statement. The start value is specified in the START WITH clause, and the next value is in the RESTART WITH clause in the ALTER statement.
  • [Db2]: Instead of the sequence start value, the next sequence value is specified in the START WITH clause in the CREATE statement. The next value is specified in the RESTART WITH clause in the ALTER statement (changing the start value is not allowed in Db2).
  • Query console:
  • DBE-17479 Failing queries with the Read access is allowed from inside read-action (or EDT) only notification in the Query console has been fixed with regression.
  • DBE-12787, DBE-12109 [Oracle]: The CREATE PROCEDURE and CREATE FUNCTION now end with ";" – as expected.
  • [MongoDB]: Loss of values in IN (...) if there are more than 10 has been fixed.
  • Code completion:
  • DBE-13506 [MongoDB]: The bug with broken SQL completion for nested properties has been fixed.
  • Code completion:
  • We fixed the image preview in the data grid.
  • DBE-13329 [MongoDB]: We added the Change Default action to configure the default page size.

New in DataGrip 2023.1 Build 231.7864.19 EAP 2 (Mar 9, 2023)

  • Fixes
  • DBE-7087: Usages search no longer looks in the installation bundled resources.
  • DBE-7466: [PostgreSQL] Fixed the issue with connecting via pg_bouncer.
  • DBE-16576: [PostgreSQL] It's possible to update a value in a view with the ENUM column.
  • DBE-17490: [PostgreSQL] The SQL generator quotes correctly in the EXCLUDE constraint.
  • DBE-17330: [MySQL] The DDL of a table is refreshed after changing a comment in the Modify dialog.
  • DBE-12758: [Oracle] Type attributes are now supported.
  • DBE-11949: [Oracle] Table types declared in the notation named in the package are now supported.
  • DBE-16452: [Oracle] Shortcut navigation works for packages.
  • DBE-14722: [Oracle] JSON columns are supported.
  • DBE-14303: [BigQuery] The precision for milliseconds in the TIMESTAMP values is no longer lost.
  • DBE-17434: The correct font color is used in the data editor header.
  • DBE-17292: The Quick Doc window doesn't freeze when counting rows.
  • DBE-17362: The schema switcher works properly in the new UI.
  • DBE-17375: .ids files can now be opened.
  • DBE-17166: Renamed folders in the database explorer no longer disappear.
  • DBE-16238: Errors no longer appear while saving a diagram.
  • DBE-17229: The Schema diff viewer now works properly - previously it opened empty if there were database or server objects included.
  • Support request: Image preview works correctly in the value editor.

New in DataGrip 2023.1 Build 231.6890.13 EAP (Feb 14, 2023)

  • DataGrip 2023.1 Quality release EAP is Open:
  • Our 2023.1 release cycle is all about quality, which means we're working on the bugs that have accumulated in our public issue tracker. Today we'll cover what we've managed to fix so far.
  • Working with code:
  • DBE-4469: We fixed the problem where SQL Formatter didn't apply the right style for a subquery in the EXISTS clause.
  • DBE-14440 [H2]: We fixed the bug with saving style settings.
  • DBE-15973 [Big Query]: The WINDOW clause is now supported.
  • DBE-9219 [Clickhouse]: Сase settings when completing exact-case names are now ignored.
  • DBE-14796 [MySQL]: Problems with LAG and LEAD functions have been fixed.
  • DBE-16311 [MySQL]: FOR UPDATE in nested queries is now supported.
  • DBE-12139 [MySQL]: The ENCRYPTION syntax is now supported.
  • DBE-13186 [Microsoft SQL Server]: Inspections no longer erroneously report extra code.
  • DBE-11946 [PostgreSQL]: An issue with Place constraints was fixed.
  • DBE-6276 [PostgreSQL]: DDL navigation to security policies now works as expected.
  • Database explorer:
  • DBE-17263: Data source content statistics is again displayed in the Quick Documentation popup.
  • DBE-10812 [PostgreSQL]: The Drop context menu command now works as expected.
  • Introspection:
  • DBE-12578 [Oracle]: Cross database triggers are now supported.
  • DBE-6986 [MySQL]: The ROW_FORMAT clause/syntax is now supported.
  • DBE-10603 [Microsoft SQL Server]: The Quick Definition now works as expected.
  • DBE-9087 [PostgreSQL]: When using the clause REFERENCING, the trigger's DDL is generated correctly.
  • DBE-12404 [Db2]: We fixed an issue with interrupting object introspection.
  • Connectivity:
  • DBE-16417 [Microsoft SQL Server]: Current schema detection now works for any database.
  • DBE-11012 [SQLite]: The SQLite native library is now unpacked to the system folder.
  • Object editor:
  • DBE-16393: We've added a source editor to the Modify view.
  • DBE-17329 [PostgreSQL]: Virtual view creation is now also available in read-only mode.
  • Data editor/viewer:
  • DBE-3572: We've added an Alternate row colors setting for results tables. When the checkbox is enabled, rows will have alternating colors.
  • DBE-16250: There are no more empty spaces in in-editor results, as the table now adjusts its height to match the height of the results.
  • Query console:
  • DBE-14074: Named parameters are detected correctly.
  • DBE-10555:Whenever you copy and paste something, the IDE now correctly analyzes the selection (instead of the cursor position).
  • DBE-12109 [Oracle]: Semicolons are no longer omitted in Oracle Aggregate Functions.
  • DBE-16871 [BigQuery]: The Unexpected value error no longer pops up when previewing a table.
  • SQL Resolve:
  • DBE-16831: A setting to specify the default resolve mode used in the console has been added to Preferences | Database | Query execution | Other.
  • DBE-5497 [Oracle]: We fixed a few problems with Oracle collection methods.
  • DBE-12772 [Oracle]: We fixed the resolution of standard attributes for collection types (for example, COUNT).
  • Explain plan
  • DBE-17137: We fixed a bug where the IDE would show the Explain Plan diagram only for the first of several queries.
  • Navigation and search
  • DBE-12015 [Oracle]: Go to Declaration (Ctrl/Cmd+B or Ctrl/Cmd+click) now navigates you to the routine implementation.

New in DataGrip 2022.3.3 Build 223.8617.3 (Jan 15, 2023)

  • Hello! We’ve released the third minor update for DataGrip 2022.3. Here are the most notable improvements and bug fixes:
  • DBE-11963: Auto-refresh is now available with adjustable intervals. It can be disabled manually or automatically (for example, if you start editing).
  • You can set up auto-refresh for sessions in Virtual views to monitor sessions in real time, which finally resolves this really old ticket, DBE-229! 
  • DBE-17059: A list of settings was added to the Object Migration dialog.
  • DBE-16936: The Custom color chooser for databases now works correctly.
  • DBE-17068: Execute to file now works correctly.
  • DBE-16902: [Redis] We fixed the problem with connecting when SSL is enabled. Important: Please update the Redis JDBC driver to v1.3.
  • [Oracle] We added more details related to obtaining stored object sources to the Diagnostic Refresh log. This will help us investigate problems when some object sources are not retrieved by the introspector properly.

New in DataGrip 2022.3 Build 223.7571.180 (Dec 5, 2022)

  • GENERAL:
  • Redis Support:
  • We’ve implemented long-awaited support for Redis. You can now connect to Redis Single Instance, explore key values in the Data Viewer, write and execute Redis queries with the help of our smart coding assistance, and more.
  • Here’s a quick overview of what it is included:
  • Connectivity: Redis Single Instance.
  • Introspection: Introspection of databases and keys, including the ability to set a default key filter for the introspector.
  • Database Explorer: Separate folders for keys of different types for Redis v6.0+, and one folder with all keys for older versions.
  • Query Execution: The JDBC driver supports the execution of the majority of queries.
  • Coding assistance: Code highlighting, keyword completion, and resolution for databases and keys.
  • Object Editor: Renaming and deleting keys.
  • Data Viewer: Filtering and JSON highlighting.
  • New UI available via settings:
  • This May, we announced a closed preview program for the new UI for IntelliJ-based IDEs. DataGrip is no exception!
  • With this first step, we aimed to introduce the reworked look and feel of our products to a limited number of users. The preview program helped us accumulate and process a lot of insightful feedback, and now we’re ready to invite everyone to try out the new UI.
  • You can switch to the new UI in Settings / Preferences | Appearance & Behavior | New UI Preview, take it for a test drive, and share your thoughts with us.
  • New Settings Sync solution:
  • In this release, we’ve introduced a reworked solution to synchronize your IDE settings. It is implemented via a plugin that is bundled by default. The new Settings Sync option will appear in the settings:
  • Virtual views:
  • This new concept is virtual and lets you use views without actually creating them in your database. Basically, it’s just a query that retrieves the result and is stored inside DataGrip.
  •  Virtual views are visible in the database explorer and can be run with a double-click.
  • Navigation in diagrams:
  • Diagram elements are now fully navigable. All major navigation actions can be performed there:
  • Open DDL: Ctrl/Cmd+B
  • Open data: F4
  • Select in the database explorer: Alt/Opt+Shift+B
  • Modify: Cmd/Ctrl+F6
  • DATABASE EXPLORER:
  • Quick filter:
  • One more long-awaited feature is finally available! Now when using quick search, you also have the ability to filter objects. All non-matching objects will be hidden.
  • Pattern-based schema filtering:
  • If you have lots of different schemas, you’ll appreciate this enhancement. It’s now possible to choose databases or schemas for introspection based on regular expression patterns. To do so, click on Add Pattern and define a regular expression pattern in the new node. The databases/schemas will be chosen according to that pattern.
  • Adding multiple patterns will combine multiplicities, not create an intersection of them.
  • The All node now behaves differently from previous versions: It doesn’t select the default schema automatically. You now need to choose between All schemas, Default schema, or applying a regexp filter.
  • Colors for global data sources:
  • Now when you set the color for the global data source, it is shared along with its data source.
  • Drag and drop for script files:
  • To run a script against any schema, you can now just drag and drop your script file from the Files tool window.
  • DATA EDITOR:
  • Formats for date and time data types:
  • It’s now possible to customize how fields of date and time types will be displayed in the data editor. The settings are located in Database | Data Editor
  • New extractor: WHERE clause:
  • A selected range of values can be now extracted as part of the WHERE clause.
  • Values within one column are combined with the OR operator.
  • Values within one row are combined with the AND operator.
  • If values of only one column are extracted, they are combined into an IN operator.
  • SQL filtering by multiple values:
  • The Filter by action now generates a condition if you select several values.
  • Text search field: populate with selection:
  • If you press Ctrl/Cmd+F for text search, the search fields will be automatically populated with the value under the cursor. This is similar to the well-known logic of the text editor.
  • Struct values are displayed correctly Big Query:
  • Struct values are now displayed in a readable way: Each nested value is displayed as a separate column.
  • WORKING WITH CODE:
  • Intention action preview:
  • Now you can instantly see how your query will be altered once you apply the IDE’s suggestions. The preview appears when you open the list of available intention actions and hover over an option.
  • You can disable the preview feature by pressing F1/Ctrl+Q while the list of intention actions is open.
  • Single line copy-paste:
  • If there is no selection, pressing Ctrl/Cmd+C automatically selects and copies the entire line in the text editor. It worked like this before, but now we have completely rounded out this action by making it easier to paste the line as well. This copied line will be pasted as a new line with a carriage return if there is no selection, as shown in this video:
  • New layout for the SQL schema generator: Per Object By Schema and Type:
  • The new layout is called Per Object By Schema and Type. If it’s used for generating SQL for the whole schema, the resulting files will be placed in folders according to the object’s type: tables, views, etc.
  • Fixes:
  • DBE-6156: Oracle SET ROW is now supported.
  • DBE-12766: SQL Server $PARTITION is now supported.
  • WORKING WITH TABLES:
  • UI for virtual foreign keys:
  • The ability to create virtual foreign keys was introduced a while ago. They are mainly used for:
  • JOIN clause code completion.
  • Showing virtual relationships in the diagrams.
  • Navigation by data relationships in the data editor.
  • The main way to create them was by using the Store Relation intention action at the JOIN clause in your query. This was a little tricky to find, and the whole functionality lacked an intuitive way to use it. Here’s what we’ve changed.
  • Virtual foreign keys are now visible in the database explorer:
  • You can create and drop them here, in the database explorer, and in the Modify Table dialog.
  • Table size in quick documentation MySQL PostgreSQL:
  • The size of the table is now displayed in the quick documentation popup for MySQL and PostgreSQL. To see it, click on Show table preview.
  • CONNECTIVITY:
  • Startup script for session templates:
  • It’s now possible to set the startup script for the session templates. This means that the script will be run each time a new session is created based on the corresponding template. For example, it lets DataGrip run the use secondary roles all statement for introspection in Snowflake.
  • Authentication options MongoDB:
  • We added many authentication mechanisms to the connection dialog for MongoDB. To use them, update your driver to version 1.16.
  • SCHEMA DIFF VIEWER:
  • Support for object dependencies:
  • The schema diff viewer now takes into account dependent objects. The most important such object is PostgreSQL identity columns. If the related sequences are different for two otherwise identical identity columns, then this difference will be displayed when these two columns are compared.
  •  Another example would be a trigger calling a procedure from another schema. Now the difference between such triggers will be displayed if the routine names are different:
  • There are still two major known limitations we want to highlight about the schema diff viewer:
  • DBE-16814: If a routine/view references some object from its body, the correct script order is not guaranteed. For instance, if a routine calls another routine, it is not guaranteed that the latter will be created before the first one.
  • DBE-15598: In some cases, object qualification is not correct inside source object bodies, default expressions, etc.

New in DataGrip 2022.3 Build 223.7571.73 EAP 3 (Nov 21, 2022)

  • New features:
  • UI for virtual foreign keys
  • New layout for SQL schema generator: File per Object By Schema and Type
  • Startup script for session templates

New in DataGrip 2022.3 Build 223.7255.83 EAP 2 (Nov 14, 2022)

  • REDIS SUPPORT:
  • Connectivity:
  • Redis Single Instance (Redis Cluster is not yet supported)
  • Introspection:
  • Introspection of databases and keys
  • Ability to set a default key filter for the introspector
  • Database Explorer:
  • Separate folders for keys of different types for Redis v6.0+
  • One folder with all keys for older versions
  • Query Execution:
  • JDBC driver allows query execution in most cases
  • Coding assistance:
  • Code highlighting
  • Keyword completion
  • Resolve of databases and keys
  • Object Editor:
  • Renaming and deleting keys
  • Data Viewer:
  • Filtering
  • JSON highlighting

New in DataGrip 2022.3 Build 223.6646.21 EAP (Oct 22, 2022)

  • Database explorer:
  • Quick filter
  • Pattern-based schema filtering
  • Colors for global data sources
  • Drag and drop for script files
  • Data editor:
  • Formats for datetime fields
  • New extractor: WHERE clause
  • SQL filtering by multiple values
  • Text search field: populate with selection
  • [Big Query] Struct values are displayed correctly
  • Working with code:
  • Intention action preview
  • Single line copy-paste
  • Working with tables:
  • Multiple edit in the Modify window
  • [MySQL, PostgreSQL] Table size in quick documentation
  • Other:
  • New UI available via settings
  • Navigation in diagrams
  • [MongoDB] Authentication options
  • Important fixes:
  • DBE-16117: Edit as Table works correctly for CSv with values starting from a single quote.
  • DBE-15784: The data editor tabs no longer steal focus.
  • DBE-13987: The All related rows option has been returned to navigation.
  • IDEA-264269: Search Everywhere results don't jump when more options are found.
  • DBE-6156: [Oracle] SET ROW is now supported.
  • DBE-12766: [SQL Server] $PARTITION is now supported.
  • DBE-16203: [Big Query] Introspection works if the port is not specified in the URL.

New in DataGrip 2022.2 Build 222.2889.12 EAP (Jun 2, 2022)

  • IMPROVEMENTS:
  • Option to import multiple CSV files
  • New Modify UI
  • Categories in keymap
  • Scopes in DDL data sources
  • Merge All Project Windows action on macOS
  • [Oracle, Vertica] Password expiration warning
  • [SQL Server] Support for collations and charsets
  • [DuckDB, Mimer SQL, Apache Ignite] Basic support
  • Quality improvements

New in DataGrip 2022.1 Build 221.5080.126 RC (Apr 5, 2022)

  • This is the release candidate for 2022.1

New in DataGrip 2022.1 Build 221.5080.35 EAP 3 (Mar 31, 2022)

  • Improvements:
  • [Limited] New version of Modify Table.
  • Reworked settings.
  • Quality improvements.

New in DataGrip 2022.1 Build 221.4906.1 EAP 2 (Mar 14, 2022)

  • Improvements:
  • Canceling running statements.
  • Canceling connections.
  • Session templates for introspection.
  • [Oracle] Fragmental introspection.
  • [SQL Server] Support for in-editor results in batch mode.
  • [PostgreSQL] Multirange types supported.
  • Quality improvements.

New in DataGrip 2022.1 Build 221.4165.70 EAP (Feb 14, 2022)

  • IMPORT/EXPORT:
  • New:
  • Copy multiple objects.
  • Quality improvements:
  • DBE-5200: Edit as table action works correctly even when the rows in the source file have different numbers of columns.
  • DBE-14541: Adding a row to a one-column CSV file works correctly.
  • DBE-14735: Fixed the bug with simultaneous export of tables containing timestamps.
  • DATA EDITOR:
  • New:
  • Default display format for binary cells.
  • [MongoDB] Editing fields in results.
  • Quality improvements:
  • DBE-13040: Better usability for displaying hidden columns – simply click on a hidden column in the column list.
  • DBE-14516: Better usability for the cell size indicator – it isn't shown for fully loaded values and has a monospaced font, so the content is aligned neatly.
  • DBE-10851: Fixed a UI glitch in the data tree view.
  • The context menu of the column is also displayed in the Transpose view.
  • INTROSPECTION:
  • New:
  • YugabyteDB added to basic support.
  • DBE-13521: [ClickHouse] the source code of the materialized views is now introspected.
  • CODE GENERATION:
  • New:
  • DBE-5136: [SQL Server] You will now get a valid script when removing columns with constraints via Modify Table.
  • QUALITY IMPROVEMENTS:
  • DBE-14760: [MySQL] The Modify Table window no longer corrupts the function index.
  • DBE-14801: [Snowflake] The generated DDL script contains the statements for creating the default sequences.
  • DATABASE DIFF VIEWER:
  • Quality improvements.
  • DBE-14686: The Reformat generated code option is respected.
  • DBE-14782: Diff viewer detects objects that are likely to be the same even if their names are different.
  • DBE-14431: [Oracle] The Array index out of bounds exception should no longer occur.
  • CODE EDITOR:
  • New:
  • Convert to subquery intention.
  • Better auto-indent algorithm.
  • Quality improvements:
  • DBE-11247: [Snowflake] JSON is correctly highlighted inside statements.
  • DBE-14504: [ClickHouse] Map literals are supported.
  • KNOWN ISSUES:
  • The Services tool window fails to appear in some cases, often when the project being used is more than several months old. Performing a settings restore often helps.

New in DataGrip 2021.3.4 Build 213.6777.22 (Jan 31, 2022)

  • DBE-14416 [PostgreSQL, Greenplum, Redshift]: The introspector is now more stable if errors occur.
  • DBE-10913: Synonym quick info now displays information about the target object.
  • DBE-14724: The console toolbar disappears automatically after session detach for non-SQL files.
  • DBE-11591 [PostgreSQL]: DataGrip will automatically re-run queries without CTID if it causes an error in Postgres Citus.
  • DBE-14728 [Azure]: Fixed Copy Table to… when the action is invoked from the context menu or from Find Action.
  • DBE-14697: After executing the migration script, DataGrip automatically refreshes the target schema.
  • DBE-14633: The Oracle debugger now works as expected.

New in DataGrip 2021.3.3 Build 213.6461.82 (Jan 3, 2022)

  • A minor bug-fix update for 2021.3:
  • FIXES:
  • DBE-14771: Data sources no longer disappear from the database explorer when changing DBMS in Expert options.
  • DBE-14665 [PostgreSQL]: Identity columns are now compared correctly.

New in DataGrip 2021.3 Build 213.5744.9 EAP 3 (Nov 16, 2021)

  • New features:
  • [Oracle] introspection levels
  • New UI for importing data
  • [Snowflake] Support for streams

New in DataGrip 2021.3 Build 213.5449.24 EAP 2 (Nov 4, 2021)

  • New features:
  • Check for boolean expressions
  • New database diff window
  • Foreign key navigation by several values
  • Automatic column types in CSV files
  • Extract function for queries
  • [PostgreSQL] Ability to hide system schemas and template databases

New in DataGrip 2021.3 Build 213.4631.26 EAP (Oct 11, 2021)

  • Data editor:
  • Aggregates
  • Independent split
  • Setting for default sorting
  • Display mode for binary data
  • [MongoDB] Completion for filter {} and sort {}
  • Database in the Version Control System:
  • Use the DDL data source to map the real one
  • Compare and synchronize them in both directions
  • File-related actions on schema nodes
  • Ability to turn Auto-sync off for DDL data source
  • Initial search path for databases and schemas
  • Connectivity:
  • [Oracle, SQL Server] Kerberos authentication
  • [Oracle, DB2] Enable DBMS_OUTPUT option
  • Accidental spaces warning
  • More options button
  • Expert options
  • Database explorer:
  • Table view for tree nodes
  • [Clickhouse] Distributed tables
  • Query Console:
  • Timestamps in output hidden by default
  • [MongoDB] Code completion for database names
  • Import/Export:
  • First row is header auto-detection

New in DataGrip 2021.2.2 Build 212.5284.17 (Sep 30, 2021)

  • Today we’re releasing the second minor update for 2021.2, which introduces several important improvements and fixes.
  • IMPROVEMENTS:
  • DBE-2216: Wildcards are now considered as column usages.
  • DBE-13773: Ctrl/Cmd+Click from the navigation bar correctly navigates to the desired element.
  • DBE-8885: [SQL Server] Line numbers are included in error messages.
  • DBE-13732: [ClickHouse] There is now a special node for distributed tables in the database explorer.
  • FIXES:
  • DBE-12656: Enable DBMS_OUTPUT works immediately after being turned on.
  • DBE-13862: The Update and Delete fields are no longer hidden in the Modify Table dialog.
  • DBE-13278: The inspection that reports unsafe queries has become smarter.
  • DBE-13945: Ctrl/Cmd+N works as before in the data editor.
  • DBE-13907: [PostgreSQL] It’s possible to modify sequences in version 10 and lower.
  • DBE-13566: [Snowflake] We’ve fixed a problem preventing the import of large CSV files.