Establishes a connection to the Wharton Research Data Services (WRDS)
database using the RPostgres package. It requires that the RPostgres
package be installed and that valid WRDS credentials be set as environment
variables.
Value
An object of class DBIConnection representing the connection
to the WRDS database. This object can be used with other DBI-compliant
functions to interact with the database.
Details
The function checks if the RPostgres package is installed
before attempting to establish a connection. It uses the host, dbname,
port, and sslmode as fixed parameters for the connection. Users must
set their WRDS username and password as environment variables
WRDS_USER and WRDS_PASSWORD, respectively, before using this
function.
WRDS account setup
A WRDS username and password alone are not enough to connect. Before the first connection:
Get a WRDS account through an institution that subscribes to the data you need (e.g., CRSP and Compustat).
Enroll in two-factor authentication (Duo) for your WRDS account. WRDS requires it for all connections, including connections from R.
Log in to the WRDS website (https://wrds-www.wharton.upenn.edu) once and accept the terms of use, if WRDS asks you to.
Store your username and password with
set_wrds_credentials(), or set theWRDS_USERandWRDS_PASSWORDenvironment variables, and restart R.When you connect, approve the Duo push notification on your registered device. The connection waits until you approve it.
If the connection fails, the error message lists these steps. Unless
quiet = TRUE, the function says when it starts connecting and when the
connection succeeds, so you know when to approve the Duo request and when
the download starts.
See also
RPostgres::Postgres(), DBI::dbDisconnect() for more
information on managing database connections.
Other WRDS functions:
disconnect_connection(),
download_data_wrds(),
download_data_wrds_ccm_links(),
download_data_wrds_compustat(),
download_data_wrds_crsp(),
download_data_wrds_fisd(),
download_data_wrds_trace_enhanced(),
set_wrds_credentials()
Examples
if (FALSE) { # \dontrun{
# Before using this function, set your WRDS credentials:
# Sys.setenv(WRDS_USER = "your_username", WRDS_PASSWORD = "your_password")
# con <- get_wrds_connection()
# Use `con` with DBI-compliant functions to interact with the WRDS database
# Remember to disconnect after use:
# disconnect_connection(con)
} # }