Oracle
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 are not available, make sure that you did not disable the plugin.
Press Ctrl+Alt+S to open 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 and software
For full information about Oracle, refer to the official documentation.
To download Oracle database software, refer to the official software downloads.
For more versions of Oracle JDBC driver, refer to the official JDBC driver downloads.
Before you begin
This topic presents a general procedure on how you can create a data source for the connection to your Oracle database in PyCharm, and run a test connection. It is assumed that you already have the necessary connection details and the database is up and running.
For example, if you want to run a database on your machine and connect to that database, the corresponding DBMS software must be installed on the machine first.
To learn about your DBMS software, refer to its official documentation.
Connect to an Oracle 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:
In the main menu, go to Oracle.
and selectIn the Database tool window ( ) , click the New icon () in the toolbar. Navigate to Data Source and select Oracle.
In the General tab of Data Sources and Drivers dialog right pane, specify the driver and connection type.
From the Driver list, select the JDBC driver for your connection.
For Oracle, the supported drivers are Oracle and Oracle for 9.X, 10.X, 11.1. For more information about driver types, refer to Oracle JDBC FAQ.
From the Connection type list, select the connection type depending on the connection details that you have:
SID: to use a unique name of an Oracle instance (a process that runs on the workstation).
Service name: to use an alias to an Oracle instance (or many instances).
TNS: to use tnsnames.ora configuration file.
Long: to use an extended JDBC URL format with advanced parameters.
URL only: connect by using only the URL.
For the URL only connection type, the JDBC URL that you enter is used and as is, including the database credentials.
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.
Location for the downloaded JDBC drivers is the PyCharm configuration directory.
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.
In the Host field, type your server address.
In the Port field, type the port of Oracle. The default port is 1521.
In the SID field, specify a unique name of Oracle instance (a process that runs on the workstation).
For more information, refer to the DBMS-specific General tab reference.
From the Driver list, select the Oracle JDBC driver mode to use with your connection:
Thin: the driver connects to the server directly.
OCI and OCI8: the driver uses native libraries to connect to the server.
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.
Kerberos: use Kerberos for authentication. Requires a Kerberos server and authentication with
kinit
.No auth: authentication is not required.
In the 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:oracle:thin:@<host_address>:<port_number>:<instance_name>
Example:
jdbc:oracle:thin:@127.0.0.1:1521:XE
For more information about the URL format, refer to the Oracle official documentation.
In the Host field, type your server address.
In the Port field, type the port of Oracle. The default port is 1521.
In the Service field, enter the alias to an Oracle instance that you want to use.
From the Driver list, select the Oracle JDBC driver mode to use with your connection:
Thin: the driver connects to the server directly.
OCI and OCI8: the driver uses native libraries to connect to the server.
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.
Kerberos: use Kerberos for authentication. Requires a Kerberos server and authentication with
kinit
.No auth: authentication is not required.
In the 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:oracle:thin:@//<host_address>:<port_number>/<instance_alias>
Example:
jdbc:oracle:thin:@//127.0.0.1:1521/XE
For more information about the URL format, refer to the Oracle official documentation.
In the TNSADMIN field, specify a path to the folder with tnsnames.ora. Alternatively, click the Open icon () and navigate to it.
For more information, refer to the Connection settings and DBMS-specific properties.
In the TNS name field, specify what service name to use if you have more than one service.
For more information, refer to the DBMS-specific General tab reference.
From the Driver list, select the Oracle JDBC driver mode to use with your connection:
Thin: the driver connects to the server directly.
OCI and OCI8: the driver uses native libraries to connect to the server.
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.
Kerberos: use Kerberos for authentication. Requires a Kerberos server and authentication with
kinit
.No auth: authentication is not required.
In the 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:oracle:thin:@<service_name>
Example:
jdbc:oracle:thin:@myServiceName
For more information about the URL format, refer to the Oracle official documentation.
In the Host field, type your server address.
In the Port field, type the port of Oracle. The default port is 1521.
In the Service field, enter the alias to an Oracle instance that you want to use.
From the Driver list, select the Oracle JDBC driver mode to use with your connection:
Thin: the driver connects to the server directly.
OCI and OCI8: the driver uses native libraries to connect to the server.
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.
Kerberos: use Kerberos for authentication. Requires a Kerberos server and authentication with
kinit
.No auth: authentication is not required.
In the 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, paste the JDBC URL of an extended format with the parameters required for your connection.
For more information about the URL format, refer to Oracle 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.
Kerberos: use Kerberos for authentication. Requires a Kerberos server and authentication with
kinit
.No auth: authentication is not required.
In the 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.
For more information about the URL format, refer to the Oracle official documentation.
For the reference information about connection settings and properties on the General and other tabs of Data Sources and Drivers dialog (Ctrl+Alt+Shift+S) , 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 schema is introspected and available to work with. If you also want to work with other 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 (⌘ 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 (Ctrl+Alt+Shift+S) , see Data Sources.
DBMS-specific properties
General tab
Item | Description | Connection type |
---|---|---|
Driver | List of the Oracle JDBC driver modes. |
|
SID | A unique name of an Oracle instance (a process that runs on the workstation). For the correct value, check the environment variable | SID |
Service | An alias to an Oracle instance (or many instances). | Service name |
TNSADMIN | Path to the folder with tnsnames.ora configuration file. For more information about tnsnames.ora, refer to Local Naming Parameters in the tnsnames.ora file. | TNS |
TNS name | The service name to use with your connection if you have more than one service. To find the service name, see a value of |
Options tab
Item | Description |
---|---|
Enable DBMS_OUTPUT | Enable DBMS_OUTPUT for the database. |