R: Completion status

dbHasCompleted {DBI} | R Documentation

## Completion status

### Description

This method returns if the operation has completed. A `SELECT` query is completed if all rows have been fetched. A data manipulation statement is always completed.

### Usage

    dbHasCompleted(res, ...)

### Arguments

`res` | An object inheriting from DBIResult.
`...` | Other arguments passed on to methods.

### Value

`dbHasCompleted()` returns a logical scalar. For a query initiated by `dbSendQuery()` with non-empty result set, `dbHasCompleted()` returns `FALSE` initially and `TRUE` after calling `dbFetch()` without limit. For a query initiated by `dbSendStatement()`, `dbHasCompleted()` always returns `TRUE`. Attempting to query completion status for a result set cleared with `dbClearResult()` gives an error.

### Specification

The completion status for a query is only guaranteed to be set to `FALSE` after attempting to fetch past the end of the entire result. Therefore, for a query with an empty result set, the initial return value is unspecified, but the result value is `TRUE` after trying to fetch only one row. Similarly, for a query with a result set of length n, the return value is unspecified after fetching n rows, but the result value is `TRUE` after trying to fetch only one more row.

### See Also

Other DBIResult generics: `DBIResult-class`, `dbBind`, `dbClearResult`, `dbColumnInfo`, `dbFetch`, `dbGetInfo`, `dbGetRowCount`, `dbGetRowsAffected`, `dbGetStatement`, `dbIsValid`, `dbQuoteIdentifier`, `dbQuoteLiteral`, `dbQuoteString`, `dbUnquoteIdentifier`

### Examples

    con <- dbConnect(RSQLite::SQLite(), ":memory:")

    dbWriteTable(con, "mtcars", mtcars)
    rs <- dbSendQuery(con, "SELECT * FROM mtcars")

    dbHasCompleted(rs)
    ret1 <- dbFetch(rs, 10)
    dbHasCompleted(rs)
    ret2 <- dbFetch(rs)
    dbHasCompleted(rs)

    dbClearResult(rs)
    dbDisconnect(con)

[Package DBI version 0.8 Index]