PyCharm 2020.1 Help

Database tool window

View | Tool Windows | Database

Overview

In the Database tool window (View | Tool Windows | Database), you can work with databases and DDL data sources. You can view and modify data structures in your databases, and perform other associated tasks.

the Database tool window

The available data sources are shown as a tree of data sources, schemas, tables and columns. If no data sources are currently defined, use the New command Alt+Insert to create a data source.

Most of the functions in this window are accessed by means of the toolbar icons or context menu commands. (If the toolbar is not currently shown, click the Settings button on the title bar and select Show Toolbar.) Many of the commands have keyboard shortcuts. If the toolbar is hidden, the Refresh and Open Query Console commands can be access by means of the title bar icons (the Refresh button and the Jump to Query Console button respectively).

Toolbar icons, context menu commands and shortcuts

IconCommandShortcutDescriptionAvailable for
Collapse All Collapse all the nodes. All node types
the Add buttonNewAlt+InsertCreate a new data source, database, schema, query console, table, column, index, or a primary or foreign key. The list of options depends on which element is currently selected. Data sources and their elements. If a DDL data source is selected, you can only choose to create another data source.
the Duplicate buttonDuplicateCtrl+DCreate a copy of the selected data source. Specify the properties of the data source in the Data Sources and Drivers dialog that opens.DB and DDL data source nodes
the Refresh buttonRefreshCtrl+F5

Update the view of the selected element (that is to synchronize the view of the element with its actual state in the database).

See also, Auto sync.

data sources and their elements
the Data Source Properties button Data Source Properties Open the Data Sources and Drivers dialog to manage your data sources and their settings. All node types
the Stop buttonDisconnectCtrl+F2 Close the database connection for the selected data source or data sources. (The names of the data sources with active database connections are shown in bold.) Data sources with active connections and their elements
the Data Editor button or the Edit Source buttonOpen EditorF4 or Ctrl+B Open the data editor or the definition editor for the selected item. Corresponding elements in data sources.
the Jump to Query Console buttonJump to Query ConsoleCtrl+Shift+F10 Open the default query console for the corresponding data source.Data sources and their elements (tables and table columns)
the Filter buttonFilter Open a list of database objects that you can filter for the selected database. The list of database objects depends on the selected database. To see a full list of available database objects and their icons, go to Icons for data sources and their elements.Data sources and their elements
RenameShift+F6 Rename the selected data source, table or column. Specify the new name in the dialog that opens.All node types
Modify Table,
Modify Column,
Modify Index,
Modify Key,
Modify Foreign Key
Ctrl+F6

Edit the definition of the selected table, column, index, or primary or foreign key.

See also, Tables.

Corresponding elements in data sources
Copy ReferenceCtrl+Alt+Shift+CCopy the fully qualified name of the selected data source, table or column to the clipboard.All node types
Find UsagesAlt+F7 Find the usages of (references to) the selected item (data source, table or column) in your source files and libraries.All node types
Database Tools | Hide Schemas Hide the selected schemas. See Show and hide schemas. Schemas in data sources
Database Tools | Manage Shown Schemas Open the Schemas popup for the current data source. See Show and hide schemas.Data sources and their elements
Database Tools | Forget Cached Schema

Use this command in problematic cases such as when your data structures start to display incorrectly, fail to synchronize, and so on. As a result, PyCharm deletes the information it has accumulated about your database.

To check if this has eliminated the problem, use the Synchronize command.

Data sources
Database Tools | Copy Settings Copy the settings for the selected data source onto the clipboard. Data sources
Database Tools | Drop Primary Key Remove the primary key constraint for the current table. Tables and columns in data sources
Database Tools | Drop Foreign Key Remove the foreign key constraint. Columns with the foreign key constraint in data sources
Database Tools | Truncate Remove all the rows in the selected table. Tables in data sources
Drop or RemoveDeleteRemove the selected item.All node types
Open Query ConsoleCreate and open a new query console for the corresponding data source.Data sources and their elements
Generate and Copy DDLCtrl+Shift+CGenerate DDL definitions for the selected data source, schema, table, view, stored procedure or function, and copy those definitions onto the clipboard. All node types except columns
Generate DDL to Query ConsoleShift+F4Open a DDL definition of the selected table or view in a query console.Tables and views in data sources
CompareCtrl+DSelect two data sources, schemas or tables and then use this command to compare table structures for the selected items. The comparison results are shown in the .DB and DDL data sources and tables
Export Data to File(s)

Save data for the selected tables and views in files. Select the output format (for example, SQL Inserts, Tab-separated (TSV), JSON-Clojure.json.clj).

Data sources, and schemas, tables and views within them
Export with "mysqldump" or Export with "pg_dump" Run mysqldump or pg_dump for the selected items. MySQL and PostgreSQL data sources, and schemas, tables and views within them
Import Data from File

Import a text file containing delimiter-separated values (CSV, TSV, and so on) into your database.

If a schema is currently selected, PyCharm will create a new table for the data that you are importing. If a table is selected, PyCharm will try to add the data to the selected table.

Schemas, tables and columns in data sources. For columns, the result will be the same as for schemas
Restore with "mysql", Restore with "psql" or Restore Run mysql, pg_restore or psql to restore a data dump. MySQL data sources, databases and schemas. PostgreSQL data sources, databases, schemas and tables
Color Settings Set or change the color for the selected element or elements. (The Database Color Settings dialog will open.)All node types
Scripted Extensions / Generate POJOs.clj Generate a Java entity class for the selected table. In the dialog that opens, specify the directory in which the .java class file should be generated.Tables
Scripted Extensions / Go to Scripts DirectorySwitch to the directory where the Generate POJOs.clj example script file is located. All node types
DiagramsCtrl+Alt+Shift+U
Ctrl+Alt+U

View a UML class diagram for the selected data source or table. You can select between the following options:

  • Show Visualisation to open the diagram on a separate editor tab.

  • Show Visualisation Popup to see the diagram in a popup.

DB and DDL data sources and tables
View | Quick Documentation (in the main menu)Ctrl+Q

View basic information about the selected element. For example, the info about a table includes the names of the data source, database, schema and the table itself, the table definition CREATE TABLE and, if appropriate, the first 10 rows.

To close the documentation popup, press Escape.

All node types

View options

The view options, generally, define what is shown in the tool window and how. To view or change these options, click the Settings button on the title bar.

Option Description
Group Schema

This option defines how schema elements are shown.

When on, there are separate nodes for tables, views and stored routines (shown as folders). Tables, views and routines (procedures and functions) are shown as elements of the corresponding groups.

The Group Schema option is on

When off, there is no explicit grouping for tables, views, and routines. Tables and views are followed by procedures and functions.

The Group Schema option is off
Group Contents

This option defines how table elements are shown.

When on, there are separate nodes for columns, indexes, primary and foreign key constraints, and triggers (shown as folders). The elements appear in the corresponding groups.

The Group Contents option is on

When off, there is no such grouping and, generally, only columns are shown for tables.

The Group Contents option is off
Show Empty Groups

If the Group Schema or the Group Contents option is on, you can select to show or hide the categories that contain no elements.

The Show Empty Groups option is on:

The Show Empty Groups option is on

The Show Empty Groups option is off:

The Show Empty Groups option is off
Show Intermediate Nodes

Shows or hides parent nodes only when you do not have other objects on the same level with a parent.

EnabledDisabled
Show Intermediate Nodes is enabled
Show Intermediate Nodes is disabled
Sort Alphabetically

When this option is off, columns, generally, are unsorted.

Sort Alphabetically is off

When this option is on, the columns are ordered alphabetically.

Sort Alphabetically is on

Show Toolbar Select or deselect this option to show or hide the toolbar.

The rest of the options are common for all the tool windows, see Tool window view modes.

Show comments for data sources and database objects

To enable descriptions for databases and tables, navigate to View | Appearance and select Descriptions in Tree Views.

To add comments for tables, select a table and press Ctrl+F6. In the Comment text field, add a table description.

To add comments for a database, open database settings Ctrl+Alt+S and add a database description in the Comment text field.

Show descriptions for databases and tables

Icons for data sources and their elements

IconDescription
Access MethodAccess Method
AggregateAggregate
Alias TypeAlias Type
ArgumentArgument
BodyBody
CheckCheck
ClusterCluster
CollationCollation
Collection TypeCollection Type
Column

Column. For more information about column icon combinations, see Possible icon combinations for columns.

Data FileData File
DatabaseDatabase
Read-onlyRead-only status
the DDL data source iconDDL data source
DefaultDefault
ExceptionException
ExtensionExtension
External SchemaExternal Schema
Foreign Data WrapperForeign Data Wrapper
Foreign KeyForeign Key
Foreign TableForeign Table
IndexIndex
KeyKey
Materialized LogMaterialized Log
Materialized ViewMaterialized View
Object AttributeObject Attribute
Object TypeObject Type
OperatorOperator
PackagePackage
ProjectionProjection
data source

Read-only data sources

RoleRole
RoutineRoutine
RuleRule
Scheduled EventScheduled Event
SchemaSchema
SequenceSequence
ServerServer
the Stored procedure or function iconStored procedure or function
SynonymSynonym
TableTable
Table TypeTable Type
TablespaceTablespace
TriggerTrigger
UserUser
User MappingUser Mapping
VariableVariable
ViewView
Virtual TableVirtual Table

Possible icon combinations for columns

IconForeign keyPrimary keyIndexedNOT NULL
Column
Column with a foreign keyHas a foreing key
Column with a primary keyHas a primary key
Indexed columnIndexed
Column that does not accept NULL valuesHas the NOT NULL contraint
Indexed column that does not accept NULL valuesIndexedHas the NOT NULL contraint
Indexed column with primary and foreign keys that does not accept NULL valuesHas a foreing keyHas a primary keyIndexedHas the NOT NULL contraint
Indexed column with primary and foreign keysHas a foreing keyHas a primary keyIndexed
Column with primary and foreign keys that does not accept NULL valuesHas a foreing keyHas a primary keyHas the NOT NULL contraint
Column with primary and foreign keysHas a foreing keyHas a primary key
Indexed column with a foreign key that does not accept NULL valuesHas a foreing keyIndexedHas the NOT NULL contraint
Column with a foreign key that does not accept NULL valuesHas a foreing keyHas the NOT NULL contraint
Indexed column with a foreign key that accepts NULL valuesHas a foreing keyIndexed
Indexed column with a primary key that does not accept NULL valuesHas a primary keyIndexedHas the NOT NULL contraint
Column with a primary key that does not accept NULL valuesHas a primary keyHas the NOT NULL contraint
Indexed column with a primary keyHas a primary keyIndexed
Indexed column that does not accept NULL valuesIndexedHas the NOT NULL contraint

Title bar context menu and buttons

You can right-click the window title bar and use the context menu to configure its viewing mode, associate the window with a different tool window bar, or resize and hide the window.

You can also use the toolbar buttons:

ItemShortcutDescription
Collapse allCtrl+NumPad -Use this button to collapse all expanded nodes in the current view.
icons.general.gearPlain.png Click this button to access a subset of the context menu commands that let you configure window's viewing mode.
Hide tool window

Use this icon or shortcut to hide the tool window .

When used in combination with the Alt key, clicking this icon hides all the tool windows attached to the same tool window bar.

Last modified: 24 June 2020