Navigating to related records

If a row references a record in a different table or is referenced in a different table, you can switch to the corresponding table to see the related record or records.

To switch to a referenced row:

Do one of the following:

Press Ctrl+B.

Select Go To | Referenced Data from the context menu.

If more than one record is referenced, select the target record in the pop-up that appears.

To switch to a row that references the current one, or to see all the rows that reference the current one:

Do one of the following:

Press Alt+F7.

Select Go To | Referencing Data from the context menu.

Select the target in one of the following categories:

First Referencing Row. All the rows in the corresponding table will be shown and the first of the rows that references the current row will be selected.

All Referencing Rows. Only the rows that reference the current row will be shown.

The options described above can also be accessed by using one of the following:

F4.

Go To | Related Data in the context menu.

Navigate | Related Data in the main menu.

Sorting data

You can sort table data by any of the columns by clicking the cells in the header row.

Each cell in this row has a sorting marker in the right-hand part and, initially, a cell may look something like this: . The sorting marker in this case indicates that the data is not sorted by this column.

If you click the cell once, the data is sorted by the corresponding column in the ascending order. This is indicated by the sorting marker appearance: . The number to the right of the marker (1 on the picture) is the sorting level. (You can sort by more than one column. In such cases, different columns will have different sorting levels.)

When you click the cell for the second time, the data is sorted in the descending order. Here is how the sorting marker indicates this order: .

Finally, when you click the cell for the third time, the initial state is resorted. That is, sorting by the corresponding column is canceled: .

Filtering data

If the filter box is not currently shown, click on the toolbar and select Row Filter.

In the filter box, specify filtering conditions.

The filtering conditions are specified as in a WHERE clause but without the word WHERE, e. g. name LIKE 'a%' AND notes LIKE '%\metal%'. Within the LIKE expressions, the SQL wildcards can be used: the percent sign (%) for zero or more characters and underscore (_) for a single character.

To apply the conditions currently specified in the box, press Enter. To cancel filtering, click , or delete the contents of the filter box and press Enter.

To reapply a memorized filter, click and select the filter in the list. See also,
Filter history size.

Using quick filtering options

In addition to specifying filtering conditions manually (see Filtering data), you can use quick filtering options.

Available as context menu commands, these options are a set of filtering conditions for the current column name. The conditions themselves depend on the value in the current cell.

To use a quick filtering option:

Right-click a cell of interest and point to Filter by.

Select the necessary condition from the list.

Reordering columns

To reorder columns, use drag-and-drop for the corresponding cells in the header row.

Restoring the initial table view

Click on the toolbar and select Reset View to restore the initial table view after reordering or hiding the columns, or sorting the data. As a result, the data, generally, becomes unsorted, the columns appear in the order they are defined in the database, and all the columns are shown.

Using the Structure view to sort data, and hide and show columns

When working with a data editor, the table structure view is available in the Structure tool window or as the corresponding popup.

The structure view shows the list of all the columns and lets you sort the data as well as hide and show the columns.

To hide the column (or show a hidden column), press Space. (The names of hidden columns are shown struck through. In the tool window, alternatively, the Hide Column or Show Column context menu command can be used.)

The shortcuts for sorting table data (Shift+Alt+Up, Shift+Alt+Down and Ctrl+Shift+Alt+Backspace) can be used in the data editor without opening the structure view.

Using the quick documentation view

The quick documentation view provides details about the values in the selected cell or cells. For example, if a cell contains long text, normally, you can see only its beginning. The whole text is shown in the quick documentation view.

If a cell contains an image, you can see that image in the quick documentation view.

You can also see the records referenced in the current record as well as the records that reference the current one.

If necessary, you can switch to the transposed view. This is when the rows and columns are interchanged. Thus, for a row, the cells are shown one beneath the other.

To open the quick documentation view, press Ctrl+Q or select Quick Documentation from the View or the context menu.

Transposing the table

The transposed table view is available. In this view, the rows and columns are interchanged.

To turn this view on or off, click on the toolbar and select Transpose. Alternatively, use the Transpose context menu command.

Enabling coding assistance for a column

You can assign a column one of the supported languages (e.g. SQL, HTML or XML): right-click the corresponding header cell, select Edit As and select the language. As a result, you get coding assistance for the selected language in all the cells of the corresponding column.

Selecting cells and ranges: using unobvious techniques

Adding cells with the same contents. Select a cell. Now, to add the nearest cell with the same contents to the selection, press Alt+J. (When looking for the corresponding cell, IntelliJ IDEA moves down.) Each next press of Alt+J will add another cell to the selection.

To remove the cells from the selection one by one - starting from the last selected cell - use Shift+Alt+J.

If a number of cells in the same row are initially selected, Alt+J and Shift+Alt+J work the same way.

Expanding a selection: cell - column - row - table. Select a cell. Now, to select all the cells in the current column, press Ctrl+W. The second press of Ctrl+W cancels the selection of the column and selects all the cells in the current row. Finally, the third press of Ctrl+W selects the whole table.

Ctrl+W works similarly if a number of cells or a range is initially selected.

Modifying cell contents

You can modify values in the table cells and, if appropriate, upload files.

To start editing a value or uploading a file, do one of the following:

Double-click the corresponding table cell.

Right-click the cell and select Edit or Edit Maximized from the context menu.

Select the cell and press F2 or Shift+Enter. In the latter case, the cell will be maximized.

Select the cell and start typing. Note that in this case the initial cell contents are deleted right away and is replaced with the typed value.

When in the editing mode, you can:

Modify the value right in the cell. To start a new line, use Ctrl+Enter. To enter the value, press Enter. To restore an initial value and quit the editing mode, press Escape.

Use value completion. Press Ctrl+Space to open the suggestion list. The list contains the values from the current column that match your input.

Maximize the cell if you need more room for editing. To do that, press Ctrl+Shift+Alt+M, or right-click the cell and select Maximize.

When working in a maximized cell, use Enter to start a new line and Ctrl+Enter to enter the value. To restore an initial value and quit the editing mode, press Escape.

Upload a file into the field (e.g. to replace an existing file with a new one). To do that, right-click the cell and select Load File. Then select the necessary file in the dialog that opens.

If a field can contain text, this function can be used to insert the contents of a text file into the field.

Replace the current value with the default one or null (if appropriate). To do that, right-click the cell and select Set DEFAULT or Set NULL.

Edit a value in the cell as a fragment in one of the supported languages (e.g. SQL, HTML or XML). To do that, right-click the cell, select Edit As and select the language. As a result, you get coding assistance for the language you have selected.

Submitting and reverting changes

IntelliJ IDEA lets you specify how the changes that you make to data in a table are submitted to the database server. There is the Submit changes immediately option for that.

By default, this option is off. So the changes are accumulated in IntelliJ IDEA unless you carry out the Submit command ( on the toolbar, Submit in the context menu or Ctrl+Enter). Before you submit the changes, you can revert them (Revert in the context menu or Ctrl+Z).

The changes for a table are submitted all at once.

The scope of the Revert command is defined by the current selection in a table: the command is applied only to the changes within the selection. So you can revert an individual change, a group of changes or all the changes.

If nothing is currently selected, the Revert command is applied to the whole table.

To revert the changes, if the manual commit mode is selected, you can also use or the Rollback command.

Unsubmitted changes are highlighted. New rows are green, cells with changed values are blue, and the rows that are going to be deleted are gray.

If the Submit changes immediately option is on, the changes are submitted right-away, and, generally, you don't need to use the Submit command.

Managing database transactions

You can select to commit transactions automatically or manually. To change the commit mode, use the Tx switch on the toolbar.

If the commit mode is set to Manual, the changes you have submitted to the server can be explicitly committed or rolled back by means of or on the toolbar, or the Commit or the Rollback context menu command.

The Tx switch can also be used for selecting the isolation level for the transactions.

Comparing tables

You can compare the current table with any other table which is open in a data editor or shown in the Database Console tool window. To do that, click on the toolbar and select the table of interest.

Copy (available in the Edit and the context menu, the keyboard equivalent is Ctrl+C). This command copies the data for the selected cells onto the clipboard.

Dump Data | To Clipboard (available in the context menu and can also be accessed by means of on the toolbar). This command copies the data for the whole table onto the clipboard.

Dump Data | To File (available in the context menu and can also be accessed by means of on the toolbar). This command saves the data for the whole table in a file. Before actually saving the data, the dialog is shown which lets you select the output format and see how your data will look in a file.

Copying and pasting data: data types are converted if necessary

You can copy (Ctrl+C) and paste (Ctrl+V) selected cells and ranges of cells - within the same table or from one table to another one. When pasting, IntelliJ IDEA converts data types automatically if and as necessary.

In the menu that opens, the output formats are in the upper part: SQL Inserts, SQL Updates, etc. (The options that look like file names are also the output formats or, to be more exact, the scripts that implement corresponding data converters.)

The output option are:

Allow Transposition. This option affects only delimiter-separated values formats (TSV, CSV). If the table is shown transposed and you are copying selected cells or rows to the clipboard (e.g. Ctrl+C), the selection is copied transposed (as shown) if the option is on and non-transposed (as in the original table) otherwise.

Skip Generated Columns (SQL). This is the option for SQL INSERTs and UPDATEs. When on, auto-increment fields are not included.

Add Table Definition (SQL). This is also the option for SQL INSERTs and UPDATEs. When on, the table definition (CREATE TABLE) is added.