Now if you have a huge value in your cell, it can be viewed or edited in a separate panel. You can also toggle soft wrap mode using the right-hand toolbar. Use all the power of our code editor for your data!
Starting with this version, you can review the query that represents your changes in the data editor. There is now a DML button that is active if there are pending changes:
And you will see a dialog with the DML preview. This query is not the exact SQL that will be run to modify your data, because DataGrip uses a JDBC driver to update tables, but most of the time it will be the same.
Well, this is quite a welcome development! There’s now a more user-friendly way to view and edit boolean values. True values are now marked with a bullet point to distinguish them from all the others.
Editing:
f
, t
, d
, n
,
g
, or c
will input the corresponding values:
false
, true
, default
, null
,
generated
, and computed
. We’re lucky that all these values
begin with different letters!
Sometimes DataGrip cannot load all the data for a given cell. This happens if the size
of the data in the cell is larger than allowed by the Database | Data views | Max LOB
length
setting. In these cases, we used to add a small piece of text, like “10 KB of 50
KB loaded”, to the value. Now we just show a hint instead of altering the value.
After we introduced a dialog window for exporting data, one tiny scenario became more complicated – exporting the whole result or table to the clipboard. So we added the following item to the context menu:
Note that Copy copies the selection, while Export to Clipboard copies the whole data set.
In addition to ObjectId and ISODate, filtering now supports UUID, NumberDecimal, NumberLong, and BinData. Also, if you have a valid UUID/ObjectId/ISODate in your clipboard, you will see this value in the list of suggested filters.
We’ve also added regular expressions to filtering, in case you’re missing the LIKE filter from MongoDB.
The new inspections widget makes it easier for you to view all the problems in your script and to navigate between them. It provides detailed information about the number of warnings, errors, and other issues in the current file. You can use the arrow icons to navigate through errors in the files, and of course it’s still possible to navigate through errors using the F2 shortcut.
If you change the name of an object in the code, this tiny button on the toolbar will let you do a refactoring! For example, this is how it works for aliases:
One less step to complete JOIN clauses: now we offer the whole clause when you start typing ‘JOIN’:
Also, completion offers a way to join by two columns, if applicable:
Sometimes you have unresolved objects in your script. When you do, DataGrip doesn’t understand where these objects are located and suspects that they don’t exist at all. While in many cases this is true, sometimes the objects are unresolved because you just need to tweak the context you are working on.
We’ve added the Refresh database quick-fix, which will help you if an object has been added to the database from somewhere else since the last time you refreshed your database.
This refactoring is now supported in more dialects: SQL Server, Db2, Exasol, HSQL, Redshift, and Sybase. You can introduce variables from any expression that has a simple type.
We’ve added a new SQL dialect: Google BigQuery. Full support for BigQuery is not here yet, but all things must begin somewhere. So far, DataGrip can correctly highlight and provide coding assistance for your queries if you use Google BigQuery.
TextMate, a text editor for Mac, offers syntax highlighting bundles for many languages. We can import and use them in DataGrip. Starting with this release, the IDE will provide syntax highlighting for the file types registered with the bundle.
Now your Python, JavaScript, Shell, and many other types of files
will have syntax highlighting by default. To see all the applicable file types, go to
Settings/Preferences | Editor | TextMate bundles
.
Now files and consoles that are highlighted with the Generic dialect are highlighted with SQL 2016. Previously, SQL 92 was used. The main improvement from this change is the ability to run common table expressions without selecting any code.
Previously, the SQL formatter had three options for modifying object names in your code: to upper case, to lower case or don't change. But it turned out that this was not enough – some people need the object names to be changed according to the casing which was used in the declaration. Now we provide that option.
This is how it works: the table Actor was declared with the first letter capitalized and the formatter leaves it unchanged.
A tip: if the declaration is in another sql file, create a DDL data source based on your sql file so that the formatter will use the correct casing.
This new action is another handy way to place multiple carets! Just select the code and
invoke multiple carets via Find Action
or the dedicated shortcut:
Shift+Alt+G
DataGrip will only show the databases and schemas you have chosen to be displayed. While this can be useful if you have many databases and schemas, it also defines which schemas need to be introspected, as DataGrip loads the metadata from the database and makes use of it later.
However, some people are more used to tools that always display all the available databases and schemas. They also prefer that externally added schemas appear in the database explorer after a refresh.
This is why we’ve added a new option to the database explorer: Show All Namespaces. In this mode, databases and schemas that are not introspected are grayed out.
While we are always encouraging people to use the Generate functionality (Alt+Ins in the SQL editor) if they want to create a view, many are more comfortable using the UI. We heard you, and we’ve added a UI option for that.
Oracle DB links are now shown in the database explorer, and the code that uses them is correctly highlighted.
Another usability issue that won’t annoy you in 2020.2: long tabs.
How it works now:
Database | General | Always show qualified names for database
objects
option is now turned off by default. Objects will be qualified in the
tab names only if there are two objects with the same name open. For example, if you
open two actor tables from different schemas, the schema name will be displayed in
the tab name. Otherwise, it won’t be.
Now you can specify the path to any native library for the driver. Here are just a few situations where this can be useful:
If you have MongoDB scripts, you can create Run configurations from them.
And last but not least: Git and Github plugins now work out of the box in DataGrip, so you don't need to install them from the Plugin Marketplace.