Honestly with no exaggeration: this is the most important feature in IntelliJ-based IDEs. Find action (Ctrl+Shift+A) will lend a helping hand when the going gets tough. If you know something is possible in DataGrip but you don’t know how to access it, just type it here. For instance, if you forget how to open a new scratch file, press Ctrl+Shift+A, type “scratch file” and press Enter. Voila!
With DataGrip you can always see your tables and their relationships in an insightful diagram, available by pressing Ctrl+Alt+U or from the context menu of the objects you want to visualize. The column with primary and foreign keys can be hidden from the diagram and be shown only on relation lines. These diagrams may be exported to image files when necessary.
Version control systems
DataGrip provides unified support for all the major version control systems (Git, SVN, Mercurial, and many others), so you can easily work on different projects from different VCS and switch between them at will. If you notice a small issue while looking at a diff, there is no need to go back to the editor - just unlock the editing mode and apply changes in-situ.
To have the VCS support, please, install the corresponding JetBrains plugin from Settings → Plugins.
We've integrated DataGrip with mysqldump and pg_dump. To dump the objects, use the Dump with… context menu option. Restore tools for MySQL and PostgreSQL also can be accessed from the context menu. In the case of PostgreSQL, the restore operation can be done with pg_dump or psql: there is a way to choose in the Restore dialog.
When you get an SQL query from another application, it can be parameterized. DataGrip supports running these kinds of queries.
The UI for editing parameter patterns is available in Settings/Preferences → Database → User Parameters. Regular expressions are highlighted and you can choose the dialect these patterns are valid.
A very handy feature that helps you experiment and prototype. With this feature you can sketch something really quick right in the editor, without modifying your project or creating any files. You can open an infinite number of scratch files and easily switch between them. DataGrip will provide all of its coding assistance features for these files according to the type you will select for them in a status bar widget.