JDBC: Java Database Connectivity
JDBC (Java Database Connectivity) is a standard API for connecting to and interacting with databases.
Spice supports JDBC clients through a JDBC driver implementation based on the Flight SQL protocol. This enables any JDBC-compatible application to connect to Spice, execute queries, and retrieve data.
Download and install the Flight SQL JDBC driver​
Download the Flight SQL JDBC driver​
- Find the appropriate Flight SQL JDBC driver version.
- Click Browse next to the version you want to download
- Click the
flight-sql-jdbc-driver-XX.XX.XX.jar
file (with only the.jar
file extension) from the list of files to download the driver jar file
Add the driver to your application​
Follow the instructions specific to your application for adding a custom JDBC driver. Examples:
Tableau:
- Windows:
C:\Program Files\Tableau\Drivers
- Mac:
~/Library/Tableau/Drivers
- Linux:
/opt/tableau/tableau_driver/jdbc
- Start or restart Tableau
JetBrains DataGrip:
- In Database Explorer menu, select "+" and choose "Driver"
- Follow the steps to add the JDBC
.jar
file
DBeaver:
- In the DBeaver application menu bar, open the "Database" menu and choose: "Driver Manager"
- Click the "New" button and follow instructions to add JDBC
.jar
file.
Configure JDBC connection​
- Use the following configuration settings:
- URL:
jdbc:arrow-flight-sql://{host}:{port}
- Dialect:
PostgreSQL
For example:
- Ensure Spice is running
- Click Connect
Spice has TLS support. For testing or non-production use cases for Spice without TLS, the following JDBC connection URL will bypass TLS jdbc:arrow-flight-sql://{host}:{port}?useEncryption=false&disableCertificateVerification=true
.
Authentication​
If API Key authentication is enabled, the API key can be provided in the JDBC connection URL as a query parameter:
jdbc:arrow-flight-sql://{host}:{port}?user=&password=<enter-api-key-here>
Replace <enter-api-key-here>
with the API key value. The user
and password
parameters are required by the JDBC driver, but only the password
parameter is used for the API key.
Execute Test Query​
In the configured application, run a sample query, such as SELECT * FROM taxi_trips;