Data sources
Available only in PyCharm Professional: download to try or compare editions
This functionality relies on the Database Tools and SQL plugin, which is bundled and enabled in PyCharm by default. If the relevant features aren't available, make sure that you didn't disable the plugin.
note
The Database Tools and SQL plugin is available only in PyCharm Professional.
Press CtrlAlt0S to open the IDE settings and then select Plugins.
Open the Installed tab, find the Database Tools and SQL plugin, and select the checkbox next to the plugin name.
Data source is a connection configuration. It stores a list of connection details that are used to establish connection to a database. For example, host, port, database name, driver, SSH and SSL configuration settings, and so on. In data source settings, you can also select databases and schemas for introspection and display in Database tool window, and change the driver for your connection.
You can configure your data sources in the Data Sources and Drivers dialog (ShiftEnter). To access the dialog, in the Database tool window ( View | Tool Windows | Database) , click the Data Source Properties button () on the toolbar.
![Data source with connection details for a PostgreSQL database Data source with connection details for a PostgreSQL database](https://resources.jetbrains.com/help/img/idea/2023.2/db_connection_details_postgresql_default.png)
You can see the list of created data sources in the Database tool window ( View | Tool Windows | Database) . Data sources with an active connection to a database are marked with a green dot in the corner of their icons.
![Data sources in the Database tool window Data sources in the Database tool window](https://resources.jetbrains.com/help/img/idea/2023.2/data_sources_list.png)
In PyCharm, you can create the following data sources:
Database data sources: connection configurations for the operational databases that contain data.
For different database vendors, PyCharm provides complete support and basic support. Complete support of a database vendor includes such features as enhanced code completion and better retrieval of database objects (introspection). All the inspections, quick-fixes, and other code assistance features are also available. Whereas basic support has limited features available.
For more information on the support types, refer to the Other databases topic.
Data Definition Language (DDL) data sources: SQL files that contain data definition language statements (refer to DDL data sources).
To connect to a database and start working with it, create a data source that will contain the connection details, and specify those details for the database that you are connecting to.
Follow the instructions for the database vendor.
PyCharm provides a complete support for the following database vendors:
For the database vendors listed below, a basic support is provided:
AWS Athena
Apache Ignite
Apache Spark
DuckDB
Elasticsearch
Firebird
Google Cloud Spanner
Informix
InterSystems IRIS
Mimer SQL
OpenEdge
Phoenix
Presto
SAP HANA
SingleStore
Tarantool
Teradata
TiDB
Tibero
Trino
YugabyteDB
To create a DDL data source, follow the instructions from the DDL data sources topic.
You can group, assign a color, and filter objects in the Database tool window ( View | Tool Windows | Database).
To group, enable, or sort data sources, click the Options icon (
) on the title bar of the Database tool window and select the necessary options.
In the Database tool window ( View | Tool Windows | Database) , the view of the data source changes instantly.
For more information about the view options, refer to View options.
In the Database tool window ( View | Tool Windows | Database) , select the necessary data source and press F6. Alternatively, right-click a data source and select Move to Folder.
If you do not have any folders, you will see the New Folder dialog. In the text field, type the folder name. You can use a forward slash (
/
) to define nesting. For example, theQA/Quick
name will create theQuick
folder inside theQA
folder.If you have folders with grouped data sources, you will see the Move to Folder dialog. To create a new folder, select New Folder. To remove a data source from the folder, select Root folder.
Also, you can use Ctrl0C, Ctrl0V, and Ctrl0X to copy, paste, and cut your data sources between folders. If you cut and paste a data source inside one project, it will be just moved, no password is required. But the password is required in all the other cases. The cut operation can be undone by using Ctrl0Z.
To have better differentiation between production and test databases, you can assign a color to a data source.
Open data source properties. You can open data source properties by using one of the following options:
In the Database tool window ( View | Tool Windows | Database) , click the Data Source Properties icon
.
Press CtrlAltShift0S.
Select the data source for which you want to assign a color.
Click the circle in the Name field to select a color.
tip
For more examples about using colors with data sources, refer to the following video at youtube.com.
The code editor and data editor tabs can use the color of the data source.
To set a color, right-click a data source and select Tools | Set Color. In the Database Color Settings dialog, select the dialog and coloring options. To have the data source color applied for query consoles and grids, select the In console editors and grids checkbox.
To select the necessary objects, use the Filter icon on the toolbar
.
To enable comments for databases and tables, click the Options icon (
) on the title bar of the Database tool window and select Show Comments instead of Details.
To add comments for tables, select a table and press CtrlF6. In the Comment text field, add a table description.
To add comments for a database, open database settings CtrlAlt0S and add a database description in the Comment text field.
By default, the Shorten Tab Titles option is enabled. A data source name in the tab title is shortened to 36 characters.
Right-click a tab of a query console and select Shorten Tab Titles.
In the Database tool window ( View | Tool Windows | Database) , click a node that groups database objects, and press F4.
Data sources in PyCharm are available at two levels: project and global. The project level means that you can access a data source only from the project where this data source was created initially. At the global level, a data source is available for other projects. By default, a data source is available at the project level.
To share a data source between different projects inside your IDE, you need to move the data source to the global level.
You can copy a data source if you need to use the same data source in another project, but have different requirements to it, such as its accessibility level (project or global), the user, database connection and schema settings, and so on.
In the Database tool window ( View | Tool Windows | Database) , click the Data Source Properties button (
).
In the Data Sources and Drivers window, click the Make Global icon (
) to make the data source available at the global level. Click the
icon again to change the level to project.
The project level means that you can access a data source only from the project where this data source was created initially. At the global level, a data source is available for other projects. By default, a data source is available at the project level.
You can copy information about a data source to the clipboard in the XML format. The resulted XML does not include password information.
You can send the XML snippet to another IDE (in a messenger or by email) and import it.
In the Database tool window ( View | Tool Windows | Database) , select data sources that you want to copy.
Press Ctrl0C. Alternatively, right-click the selection and navigate to Copy/Paste | Copy Data Source.
On another workstation, click View | Tool Windows | Database.
In the Database tool window, click the New icon (
), select Import from Clipboard. Alternatively, right-click the Database tool window and select Copy/Paste | Paste Data Source (or press Ctrl0V).
note
PyCharm stores passwords in native keychains on macOS and Linux and in the KeePass storage on Windows. You can configure your IDE to store passwords in KeePass (File | Settings | Appearance & Behavior | System Settings | Passwords).
You can delete a data source one of the following ways:
To delete the data source using its context menu, in the Database tool window ( View | Tool Windows | Database) , right-click the data source that you want to delete and select Delete Data Source.
To delete a data source in the Data Sources and Drivers dialog, follow these steps:
Open data source properties. You can open data source properties by using one of the following options:
In the Database tool window ( View | Tool Windows | Database) , click the Data Source Properties icon
.
Press CtrlAltShift0S.
In the left pane of the dialog, select the data source that you want to delete and click the Remove icon (
) in the toolbar.
To delete a data source in the Data Sources and Drivers dialog via its context menu, in the left pane of the dialog, right-click the data source that you want to delete and select Remove.
tip
You can also select the data source that you want to delete and press Delete.
You can export and import data source settings by using the settings.zip file. The settings.zip file includes only data sources that are available at the global level. For more information about changing a level, refer to Change the project level to global.
note
You can export only global data sources. If you have no global data sources or no drivers, you will not see Database: global data sources and Database: drivers in the export list.
Click File | Manage IDE Settings | Export Settings.
In the Export Settings window, click Select None.
In the Export Settings window, select Database: drivers, Database: settings, and Database: global data sources. You must have at least one global data source to have Database: global data sources in the export list. Also, ensure that you downloaded or created at least one driver. Otherwise, the Database: drivers menu item will not appear in the list.
In the Export settings to field, type a path to the folder where you want to store the settings.zip file.
Click File | Manage IDE Settings | Import Settings.
In the Import File Location window, locate the settings.zip file that you exported, and double-click it.
In the Select Components to Import window, select Database: drivers, Database: settings, and Database: global sources.
Click OK.
In the Restart Needed window, click OK to restart your IDE.
Open the Data Sources and Drivers window, enter necessary connection credentials in the data source properties. If the data source is on a local or network drive, ensure that the path to this data source is correct.
To ensure that the connection to the data source is successful, click Test Connection.
Open settings by pressing CtrlAlt0S and navigate to Appearance & Behavior | System Settings | Passwords.
Select the In KeePass option.
In the Database field, specify a path for the KDBX file in the directory where you store your project.
Copy the whole folder with your project to another computer.
On another computer, open settings by pressing CtrlAlt0S and navigate to Appearance & Behavior | System Settings | Passwords.
In the Database field, type a path to the copied KDBX file.
Click File | Open and navigate to the directory with copied project files.
Thanks for your feedback!