Snowflake
Enable the Database Tools and SQL plugin
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.
Press Control+Alt+S to open the IDE settings and then select
.Open the Installed tab, find the Database Tools and SQL plugin, and select the checkbox next to the plugin name.
Official documentation
For full information about Snowflake, refer to the official documentation.
This topic presents a general procedure on how you can create a data source for the connection to your Snowflake database in PyCharm, and run a test connection. It is assumed that you already have the necessary prerequisites and the database is up and running.
Connect to a Snowflake database
To connect to the database, create a data source that will store your connection details. You can do this using one of the following ways:
From the main menu, navigate to Snowflake.
and selectIn the Database tool window ( ) , click the New icon () in the toolbar. Navigate to Data Source and select Snowflake.
In the General tab of Data Sources and Drivers dialog right pane, specify the driver and connection type.
In the Driver list, leave the default driver option, unless another driver is required for your connection.
From the Connection type list, select the connection type depending on the connection details that you have:
default: connect by using Host, Port, Database, Warehouse, and URL.
URL only: connect by using only the URL.
For the URL only connection type, the JDBC URL that you enter is used as is.
For the other connection types, the JDBC URL is broken down into connection details. You can either specify them separately and use the automatically generated URL, or you can enter the URL directly in the corresponding field.
Check if there is a Download missing driver files link at the bottom of the connection settings area. Click this link to download drivers that are required to interact with a database. For a direct download link, refer to the JetBrains JDBC drivers page.
You can find the downloaded JDBC drivers in the PyCharm configuration directory.
The IDE does not include bundled drivers in order to have a smaller size of the installation package and to keep driver versions up-to-date for each IDE version.
You can also use your drivers for the database instead of the provided ones. For more information about connecting to a database with your driver, refer to Add a user driver to an existing connection.
If there is no Download missing driver files link, then you already have the required drivers.
Specify the database connection details. Alternatively, paste the JDBC URL in the URL field.
(Optional) If you need connection fields for entering a schema or a role, click the More Options link, and select the necessary checkboxes here.
In the Host field, type the URL to connect to your Snowflake account with.
For more information about supported URL formats, refer to the official documentation.
In the Port field, type the port of Snowflake. The default port is 443.
From the Authentication list, select the authentication method that you want to use to authenticate the connection. The following options are available:
User & Password: by using your login and password.
Authenticator: by using the authenticator to verify the user login credentials. For example, to use browser-based SSO for authentication, enter
externalbrowser
.For more information about the authenticator, refer to the Snowflake official documentation.
No auth: authentication is not required.
In User field, type your username.
Leave the Password field empty by right-clicking it and selecting Set Empty.
In the Database field, type the database name to which you want to connect.
In the Warehouse field, type the name of a cluster of compute resources in Snowflake, which you want to use. For more information about warehouses, refer to the Snowflake official documentation.
In the URL field, PyCharm generates the JDBC URL automatically using the values of other connection settings.
If you need to use a JDBC URL with certain additional settings, paste it in the URL field. The general URL to use is as follows:
Format:
jdbc:snowflake://<connection_url>:<port_number>?warehouse=<warehouse_name>&db=<database_name>
Example:
jdbc:snowflake://myOrganization-myAccount.snowflakecomputing.com:443?warehouse=myWarehouse&db=myDatabase
For more information about the URL format, refer to the Snowflake official documentation.
From the Authentication list, select the authentication method that you want to use to authenticate the connection. The following options are available:
User & Password: by using your login and password.
Authenticator: by using the authenticator to verify the user login credentials. For example, to use browser-based SSO for authentication, enter
externalbrowser
.For more information about the authenticator, refer to the Snowflake official documentation.
No auth: authentication is not required.
In User and Password fields, type your user credentials.
To use no password, leave the Password field empty.
To delete a once entered password, right-click the Password field and select Set Empty.
In the URL field, PyCharm generates the JDBC URL automatically using the values of other connection settings.
If you need to use a JDBC URL with certain additional settings, paste it in the URL field. The general URL to use is as follows:
Format:
jdbc:snowflake://<connection_url>:<port_number>?warehouse=<warehouse_name>&db=<database_name>
Example:
jdbc:snowflake://myOrganization-myAccount.snowflakecomputing.com:443?warehouse=myWarehouse&db=myDatabase
For more information about the URL format, refer to the Snowflake official documentation.
For the reference information about connection settings and properties on the General and other tabs of Data Sources and Drivers dialog (Command I), see Connection settings and DBMS-specific properties.
Ensure that the connection to the database can be established using the provided details. To do that, click the Test Connection link at the bottom of the connection details area.
In case of any connection issues, refer to the Cannot connect to a database page.
(Optional) By default, only the default database and schema are introspected and available to work with. If you also want to work with other databases and schemas, in the Schemas tab, select them for the introspection.
Click OK to create the data source.
Find your new data source in the Database tool window (Alt+1) .
For more information about the Database tool window, see the corresponding reference topic.
For more information about working with database objects in PyCharm, refer to Database objects.
To write and run queries, open the default query console by clicking the data source and pressing F4.
To view and edit data of a database object, open Data editor and viewer by double-clicking the object.
Connection settings and DBMS-specific properties
Connection settings
For the reference information about connection settings (for example, Host, Port, and so on) on the General and other tabs of Data Sources and Drivers dialog (Command I), see Data source settings.
DBMS-specific properties
General tab
Item | Description | Available for |
---|---|---|
Warehouse | Warehouse is a cluster of compute resources in Snowflake. A warehouse provides the required resources, such as CPU, memory, and temporary storage. For more information about Snowflake, refer to the Snowflake user guide. |
|
Authenticator | The authenticator to use for verifying user login credentials. For more information about the authenticator, refer to the Snowflake official documentation>. |
|