This section will give you a brief overview of the features available in DataGrip. It is also relevant for the database plugin used in IntelliJ IDEA Ultimate, PyCharm Professional, PhpStorm, RubyMine, CLion, AppCode, GoLand and Rider. For more details visit the documentation page.

Exploring your databases

DataGrip is the multi-engine database environment. If the DBMS has a JDBC driver you can connect to it via DataGrip. It provides database introspection and various instruments for creating and modifying objects for the supported engines:

Database objects

DataGrip introspects all objects in your databases and displays them in folders grouped by schemas. It also provides a UI for adding and editing tables, columns, indexes, and constraints etc.

Learn more

Data editor

The powerful data editor lets you add, remove, edit, and clone data rows. Navigate through the data by foreign keys and use the text search to find anything in the data displayed in the data editor.

Learn more


Quick navigation takes you to an object independent of whether it has just been created in your code, or it has already been read from a database. Navigate to symbol action lets you find objects by their name.

Learn more

Writing SQL

Just as any decent IDE should, DataGrip provides smart code completion, code inspections, on-the-fly error highlighting, quick-fixes, and refactoring capabilities. It saves you time by making the process of writing SQL code more efficient.

Smart text editor

Just as with any IntelliJ platform IDE, DataGrip includes a code editor which helps you be more productive. Transform and move blocks of code, use multi-cursors to manage selection, format code according to a specific style, and much more.

Learn more

Code completion

DataGrip provides context-sensitive, schema-aware code completion, helping you to write code faster. Completion is aware of the tables structure, foreign keys, and even database objects created in the code you're editing.

Learn more

Code generation

Forget about writing typical code manually: DataGrip will do that for you. It generates code for changing objects like tables, columns, etc., based on UI. Moreover, it helps you to get DDL for tables and provides DML queries from result-sets.

Learn more

Code analysis and quick-fixes

DataGrip detects where probable bugs may occur in your SQL code and suggests the best options to fix them on the fly. It will immediately let you know about unresolved objects, the use of keywords as identifiers, and always offers you a way to fix the problem.

Learn more

Refactoring and finding usages

DataGrip correctly resolves all references in your SQL files. When you're renaming database objects from SQL, they will also be renamed in the database. You can quickly find in which stored procedures, functions and views your tables are used.

Learn more

Customize appearance

DataGrip comes with light and dark look and feel themes. Each of them can be fully customized, so you can create the one that suits you best. The same works for more than ten pre-configured keymaps.

Learn more

Running queries

The query console in DataGrip is a basic necessity for any SQL developer. Create multiple consoles, each with their own schema and query options.

Query console

Specify the console’s behavior for running queries: choose what you want to execute— from the smallest statement or the largest one.

Local history

Each console supports schema switching, and provides a local history to keep track of all your activity protecting you from losing any of your work.

Diff viewer

Use the diff viewer to compare two console snapshots in local history or two query results. DataGrip highlights the differences between the two and lets you manage the level of the comparison criteria via a tolerance parameter.

Import/export options

Import data from CSV or any DSV file. DataGrip also has a powerful engine to export data in various formats. You can even create your own export formats.

Import CSV

Enjoy a dedicated UI for importing CSV and TSV files to the database. It’s possible to map every column of the file being imported to a table column in your database, which can be either an existing table or a new one created during the import process.

Export as text

Any table or result-set can be exported in a variety of formats including CSV, JSON, XML, and HTML. You can even create your own export format.

Export as queries

Any table or result-set can also be presented as a batch of UPDATE or INSERT statements, which can be helpful for modifying data.

Miscellaneous features

Among other things, DataGrip comes with user parameters support, CSV editor, diagram builder, version control support and many other features.

User parameters

DataGrip supports running parameterized SQL queries. Add your own parameter patterns using regular expressions and choose the SQL dialects which these patterns will be applied to.

VCS support

DataGrip provides a unified interface for most of the popular version control systems, ensuring a consistent user experience with Subversion, Git and GitHub, Mercurial, CVS, Perforce, and TFS.


Explore your tables and their relationships on an insightful diagram.