IntelliJ IDEA 13: What’s New in Database Tools

We hope you had enough time during the holidays to play with IntelliJ IDEA 13 and now want to try something new, like Database Tools, which has been so greatly improved in version 13 that you can now ditch your third party database client and perform all database operations right from IntelliJ IDEA (and it doesn’t matter what server you are using, you get the same user experience with all of them.)

Data Source Configuration

The data source configuration is no more a nightmare, thanks to the new Data Source and Drivers dialog. Just type a host, port, credentials and IntelliJ IDEA will take care of the rest, including downloading the driver and composing the JDBC URL.

Find Usages by a Primary Key

Another amazing new feature you’ll hardly find in any database client is Find Usages for a table row. This action helps you find all other rows referencing the current one via it’s primary key. Now you don’t need to write a query to find out, for example, which orders have been made by a certain customer, you just call Find Usages via Alt+F7 and that’s it.

Show Data by a Foreign Key

If you’d like to see the referenced data behind a foreign key (without leaving the table), just press Ctrl+Q (Ctrl+J for Mac) while a foreign key is selected, and IntelliJ IDEA will show you the data in a quick popup.

If you press the shortcut twice, you’ll get a popup with the Transposed view of the row.

Needless to say that navigation from a foreign key to referenced data works via Ctrl+B (Cmd+B for Mac).

Structure Popup and Tool Window

Every IntelliJ IDEA user knows how the Structure popup via Ctrl+F12 (Cmd+F12 for Mac) is useful when navigating in a file or class structure. Now you can use it in the table editor and result views as well to navigate between columns. Additionally, you can toggle column visibility (press Space), or even change their order via Shift+Alt+Up/Down (reset order with Alt+Shift+Ctrl+Backspace, Alt+Shift+Cmd+Backspace for Mac).

The same functionality is also available in the Structure tool window.

Note that the Structure popup (and tool window, too) let you navigate through an SQL file structure.

Query Filter and Sorting

User interface for query filter and results sorting has also been improved, and you can click column headers to sort data either locally or on the server side.

Other major improvements include:

  • Current SQL statement highlighting in the editor
  • Smart code completion for JOIN statements
  • Assigning colors to databases
  • Configuring H2 and SQLite data sources by drag and drop

As always you are welcome to share your feedback or submit bug reports to the issue tracker.

Stay tuned to our blog for more news.

Develop with Pleasure!

About Andrey Cheptsov

Andrey Cheptsov is IntelliJ IDEA product marketing manager at JetBrains. He's passionate about productivity, programming languages and tools.
This entry was posted in New Features and tagged , , . Bookmark the permalink.

7 Responses to IntelliJ IDEA 13: What’s New in Database Tools

  1. Craig LaValle says:

    These are great. These features make me smile.

    But what would make me jump up and pump my fist in the air startling everyone in my office with yelps of joy? A physical data modelling tool.

    Anyone know of a plugin for that kind of thing? I looked through the issue tracker and didn’t see anything regarding such a feature…

  2. MuppetGate says:

    Impressive! … :-D

    The key referencing stuff is damn clever!

  3. Hari says:

    This is great..was curious when/if this will come to pycharm.

  4. Zorchon says:

    Love the ability to follow relations easily. I don’t know if it would be worth the effort, but one could imagine being able to click a field in the popup and have that column’s values be substituted into the original column. Behind the scenes, clicking/choosing the column could auto-generate a join and maybe create a new tab for the results of the join.

  5. Sergio Toniutti says:

    Good! but how i can use a Firebird DB?
    This DB is not present in the list; i have create a new driver definition, specifying the driver jaybird-full-2.1.6.jar but when i try to connect to the DB, IDEA launch this exception:
    Connection to Firebird-jdbc:firebirdsql:ntserver04/3050:presenze – failed: Exception in thread “main” java.lang.InstantiationException: org.firebirdsql.jdbc.FirebirdDriver
    at java.lang.Class.newInstance(Class.java:359)
    at com.intellij.persistence.database.console.RemoteJdbcServer.main(RemoteJdbcServer.java:15)

    Why?

    Thanks, Sergio

    • Krzysztof Bury says:

      Hi Sergio,

      I do have the same problem.

      I would be grateful if anyone could explain this problem or propose a solution.

      Thank you in advance.

      Best regards,
      Krzysztof

  6. Brandon Murray says:

    Fantastic tool!

    The project I’m working on uses gradle and we use the gradle idea plugin to generate the idea project/module files. I implement my own hooks into this process to add my own customizations. One of them is to configure my datasources… this way I don’t have to manually reconfigure the data sources every time I need to regenerate my project files. The problem I’m having is that intellij encrypts the datasource password. So when I try to configure this through the gradle plugin, I’m stuck. Is there a way to turn off the encryption? Or another workaround you could recommend?

    Thanks!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">