Coding is what most developers spend the bulk of their time doing in an IDE. DataGrip’s smart features like auto-completion, code snippets, formatter, refactorings, and various intention actions help you code faster. Concentrate on the logic, not on what you need to type!
DataGrip provides a smart data editor with the ability to add, delete, and change data. All of the queries DataGrip runs during data updates can later be found in its SQL log so you can perform the same changes against another database.
DataGrip’s data extractor supports many formats including SQL INSERTS, SQL UPDATES, CSV, JSON, XML, and others. The mechanism is customizable so you can create your own formats, such as Markdown or just plaintext.
If you work with SQL files stored on your computer, then you might already have a working directory with tons of scripts. DataGrip provides a handy interface for that. Attach folders from your computer, associate them with data sources, run scripts against several databases, or even use built-in Git integration!
DataGrip provides many ways to customize the interface. You can choose from any of the default color schemes or create your own, mark data sources with different colors, and even customize or set up your own keyboard scheme.
To help you manage PostgreSQL backups, we've integrated pg_dump and pg_restore into DataGrip. As soon as you specify the path to these tools, you will be able to use DataGrip’s UI to dump and restore PostgreSQL databases. The restore operation can be performed with pg_dump or psql – you can choose which one to use in the Restore dialog.
Foreign data wrappers are an advanced PostgreSQL feature. They allow you to link a remote database to PostgreSQL and represent it as a set of foreign tables that behave like normal ones. DataGrip has built-in support for foreign data wrappers, and foreign tables are displayed in the database explorer.
DataGrip has a mechanism for creating virtual foreign keys. It helps provide better code completion and navigation, in addition to displaying virtual relationships in the diagram. In PostgreSQL, pg_catalog is covered by virtual foreign keys out of the box. This means that JOIN completion helps you when querying system tables. Also, it is possible to use data in system tables for navigation.
DataGrip uses a JDBC driver to connect to your PostgreSQL database, which will be downloaded automatically when testing the connection. In addition to the main credentials you’ll need in order to connect (such as port, user, and password), you can set several options for the new PostgreSQL data source:
Once you’re connected to your PostgreSQL database, you’ll see the list of objects in the left pane, called the database explorer. Here you can filter objects and choose which schemas should be shown.
DataGrip can help you detect bugs and problems that are likely to arise in your SQL code before you compile and run it. Here are just a few examples of DataGrip coming to the rescue by catching mistakes and bringing them to your attention.