This generic tests whether a database object is still valid (i.e. it hasn't been disconnected or cleared).

# S4 method for class 'DatabaseConnectorDbiConnection'
dbIsValid(dbObj, ...)

Arguments

dbObj

An object inheriting from DBIObject, i.e. DBIDriver, DBIConnection, or a DBIResult

...

Other arguments to methods.

Value

dbIsValid() returns a logical scalar, TRUE if the object specified by dbObj is valid, FALSE otherwise. A DBI::DBIConnection object is initially valid, and becomes invalid after disconnecting with DBI::dbDisconnect(). For an invalid connection object (e.g., for some drivers if the object is saved to a file and then restored), the method also returns FALSE. A DBI::DBIResult object is valid after a call to DBI::dbSendQuery(), and stays valid even after all rows have been fetched; only clearing it with DBI::dbClearResult() invalidates it. A DBI::DBIResult object is also valid after a call to DBI::dbSendStatement(), and stays valid after querying the number of rows affected; only clearing it with DBI::dbClearResult() invalidates it. If the connection to the database system is dropped (e.g., due to connectivity problems, server failure, etc.), dbIsValid() should return FALSE. This is not tested automatically.