Home  /  Resources & support  /  FAQs  /  Configuring JDBC for Stata

How do I set up and store a JDBC connection for Stata?

Title   Configuring JDBC for Stata
Author Kevin Crow, StataCorp

Java Database Connectivity (JDBC) is a standard for exchanging data between programs. Stata supports the JDBC standard for importing data from relational databases or nonrelational database-management systems that have rectangular data. Using the jdbc command to import data from a database requires that the database vendor supply a JDBC driver for you to download and install. If the database is functioning and the driver can be found by Stata, one call using jdbc load is all that is needed to import data.

Stata’s current JDBC implementation is based on JDBC 4.3, released September 21, 2017, in Java SE 9. Older JDBC drivers may work with Stata, but some of the new features in JDBC 4.3 will not be available.

For Stata's JDBC, you need the .jar file for your database. Be sure that the version of the .jar is the correct version for the version of your database.

To set up the connection, you install the .jar file along Stata's adopath so that Stata can find it and load it into JVM memory. To connect, open the do-file editor and type

. local jar "redshift-jdbc42-2.0.0.0.jar"
. local driverc "com.amazon.redshift.jdbc42.Driver"
. local url "jdbc:redshift://redshift-cluster-1.cziajbxjzi3e.us-west-2.redshift.amazonaws.com:5439/emails"
. local user "admin"
. local pass "secret"

. jdbc connect,  jar("`jar'") driverclass("`driverc'") url("`url'") 
        user("`user'") password("`pass'")

If you would like store your connection setting in between Stata sessions, you can create profile.do and add a JDBC data source name for your Java connection. For example, typ

. local jar "redshift-jdbc42-2.0.0.0.jar"
. local driverc "com.amazon.redshift.jdbc42.Driver"
. local url "jdbc:redshift://redshift-cluster-1.cziajbxjzi3e.us-west-2.redshift.amazonaws.com:5439/emails"
. local user "admin"
. local pass "secret"

. jdbc add RedShift,  jar("`jar'") driverclass("`driverc'")     
        url("`url'") user("`user'") password("`pass'")

to store your settings for a Stata session, and type

. jdbc connect RedShift

to use those settings for the following jdbc commands for every Stata session you open.