If your target table is in a database, the db_tbl() function
is a handy way of accessing it. This function simplifies the process of
getting a tbl_dbi object, which usually involves a combination of building
a connection to a database and using the dplyr::tbl() function with the
connection and the table name (or a reference to a table in a schema). A
better option is to use this function as the read_fn parameter in
create_agent() and create_informant(). This can be done by using a
leading ~ (e.g,. read_fn = ~db_tbl(...)).
The username and password are supplied though environment variables. If
desired, these can be supplied directly by enclosing those values in I().
db_tbl(db, dbname, table, user, password, host = NULL, port = NULL)Either an appropriate driver function (e.g.,
RPostgres::Postgres()) or a shorthand name for the database type. Valid
names are: "postgresql", "postgres", or "pgsql" (PostgreSQL, using
the RPostgres::Postgres() driver function); "mysql" (MySQL, using
RMySQL::MySQL()); "maria" or "mariadb" (MariaDB, using
RMariaDB::MariaDB()); "duckdb" (DuckDB, using duckdb::duckdb()); and
"sqlite" (SQLite, using RSQLite::SQLite()).
The database name.
The name of the table, or, a reference to a table in a schema
(two-element vector with the names of schema and table). Alternatively,
this can be supplied as a data table to copy into an in-memory database
connection. This only works if: (1) the db is either "sqlite" or
"duckdb", (2) the dbname was chosen as ":memory:", and (3) the
data_tbl is a data frame or a tibble object.
The environment variables used to access the username and password for the database.
The database host and optional port number.
A tbl_dbi object.
1-6
Other Planning and Prep:
action_levels(),
col_schema(),
create_agent(),
create_informant(),
scan_data(),
validate_rmd()