Learn R Programming

RMySQL (version 0.4-6)

getTable: Convenience functions for Importing/Exporting DBMS tables into R/S.

Description

These functions mimic their R/S counterpart get, assign, exists, and remove, except that they generate SQL code that gets executed in a relational database engine. They all work over a RDBMS connection, and an SQL table name (their semantics have been tentatively extended a bit to preserve row.names).

Usage

getTable(con, name,  ...)
  assignTable(con, name, value, row.names = T, ...)
  existsTable(con, name, ...)
  removeTable(con, name, ...)

Arguments

con
a database connection object.
name
a character string specifying the SQL table name.
value
an R/S data.frame (or coerceable to data.frame).
row.names
in the case of getTable, this argument can be a string or an index specifying the column in the SQL table to be used as row.names in the output data.frame (a NULL, "", or 0 specifies that no colu
overwrite
a logical specifying whether to overwrite an existing table or not. Its default is FALSE.
append
a logical specifying whether to append to an existing table in the RDBMS. Its default is FALSE.
...
any optional arguments that the underlying database driver supports.

Value

  • getTable returns a data.frame; the other functions return TRUE or FALSE denoting whether the operation was successful or not.

Side Effects

An SQL statement is generated and executed on the RDBMS; the result set it produces is fetched in its entirety. These operations may failed if the underlying database driver runs out of available connections and/or result sets.

The semantics of assign are slightly extended to allow appending to an existing table. Also note that constraints on the remote table may prevent certain assignments (e.g., appending data to a table with a primary key field could fail if there are duplicate values in the corresponding data frame column).

References

See the The Omega Project for Statistical Computing http://www.omegahat.org for details on the R/S database interface.

See Also

get assign exists remove dbConnect MySQL

Examples

Run this code
con <- dbConnect("MySQL", group = "vitalAnalysis")
assignTable(con, "fuel_frame", fuel.frame)
removeTable(con, "fuel_frame")
if(existsTable(con, "RESULTS")){
   assignTable(con, "RESULTS", results2000, append = T)
else
   assignTable(con, "RESULTS", results2000)
}

Run the code above in your browser using DataLab