There are different ways to open a connection and to get data.
Prepare database with a table
db <- rocker::newDB() # New database handling object
#> dctr | New object
db$setupSQLite(dbname = tempfile()) # Setup SQLite database
#> Dctr | Driver load RSQLite
db$connect() # Open connection
#> DCtr | Database connected
db$writeTable("mtcars", mtcars) # Create table for testing
#> DCtr | Write table mtcars columns mpg, cyl, disp, hp, drat, wt, qsec, vs, am, gear, carb rows 32
db$disconnect() # Close connection
#> Dctr | Database disconnected
Example 1
Get query with automatic connection / disconnection
output <- db$getQuery("SELECT * FROM mtcars;") # Get query
#> DCtr | Database connected
#> DCtR | Send query 21 characters
#> DCtR | Fetch rows all -> Received 32 rows, 11 columns, 4824 bytes
#> DCtR | Rows fetched 32
#> DCtR | Has completed yes
#> DCtr | Clear result
#> Dctr | Database disconnected
Example 2
Get query with manual connection / disconnection
db$connect() # Open connection
#> DCtr | Database connected
output1 <- db$getQuery("SELECT * FROM mtcars;") # Get query 1
#> DCtR | Send query 21 characters
#> DCtR | Fetch rows all -> Received 32 rows, 11 columns, 4824 bytes
#> DCtR | Rows fetched 32
#> DCtR | Has completed yes
#> DCtr | Clear result
output2 <- db$getQuery("SELECT * FROM mtcars;", 15) # Get query 2
#> DCtR | Send query 21 characters
#> DCtR | Fetch rows 15 -> Received 15 rows, 11 columns, 3416 bytes
#> DCtR | Rows fetched 15
#> DCtR | Has completed no
#> DCtR | Fetch rows 15 -> Received 15 rows, 11 columns, 3416 bytes
#> DCtR | Rows fetched 30
#> DCtR | Has completed no
#> DCtR | Fetch rows 15 -> Received 2 rows, 11 columns, 2184 bytes
#> DCtR | Rows fetched 32
#> DCtR | Has completed yes
#> DCtr | Clear result
db$disconnect() # Close connection
#> Dctr | Database disconnected
Example 3
Function getQuery() is a combination of functions sendQuery(), fetch() and clearResult().
db$connect() # Open connection
#> DCtr | Database connected
db$sendQuery("SELECT * FROM mtcars;") # Send query
#> DCtR | Send query 21 characters
output <- db$fetch() # Fetch result
#> DCtR | Fetch rows all -> Received 32 rows, 11 columns, 4824 bytes
db$clearResult() # Clean up result
#> DCtr | Clear result
db$disconnect() # Close connection
#> Dctr | Database disconnected
Clean up