Releases: r-dbi/RSQLite
Releases · r-dbi/RSQLite
RSQLite 1.0.0
New features
- Updated to SQLite 3.8.6
- Added
datasetsDb()
, a bundled SQLite database containing all data frames
in the datasets package (#15). - Inlined
RSQLite.extfuns
- useinitExtension()
to load the many
useful extension functions (#44). - Methods no longer automatically clone the connection is there is an open
result set. This was implement inconsistently in a handful of places (#22).
RSQLite is now more forgiving if you forget to close a result set - it will
close it for you, with a warning. It's still good practice to clean up
after yourself, but you don't have to. dbBegin()
,dbCommit()
,dbRollback()
throw errors on failure, rather than
returnFALSE
. They all gain aname
argument to specify named savepoints.dbFetch()
method added (fetch()
will be deprecated in the future)dbRemoveTable()
throws errors on failure, rather than returningFALSE
.dbWriteTable()
has been rewritten:- It quotes field names using
dbQuoteIdentifier()
, rather
than use a flawed black-list based approach with name munging. - It now throws errors on failure, rather than returning FALSE.
- It will automatically add row names only if they are character, not integer.
- When loading a file from disk,
dbWriteTable()
will no longer
attempt to guess the correct values forrow.names
andheader
- instead
supply them explicitly if the defaults are incorrect. - It uses named save points so it can be nested inside other
transactions (#41). - When given a zero-row data frame it will just creates the table
definition (#35).
- It quotes field names using
Changes to objects
- The
dbname
,loadable.extensions
,flags
andvfs
properties of
a SqliteConnection are now slots. Access them directly instead of using
dbGetInfo()
.
Deprecated and removed functions
- RSQLite is no longer nominally compatible with S (#39).
idIsValid()
is deprecated. Please usedbIsValid()
instead.dbBeginTransaction()
has been deprecated. Please usedbBegin()
instead.dbCallProc()
method removed, since generic is now deprecated.- Renamed
dbBuildTableDefinition()
tosqliteBuildTableDefinition()
to avoid implying it's a DBI generic. Old function is aliased to new with
a warning. dbFetch()
no longer numbers row names sequentially between fetches.safe.write()
is no longer exported as it shouldn't be part of the
public RSQLite interface (#26).- Internal
sqlite*()
functions are no longer exported (#20). - Removed
SqliteObject
anddbObject
classes, modifyingSqliteDriver
,
SqliteConnection
, andSqliteResult
to use composition instead of multiple
inheritance.