DBI for R
R's interface to databases, with a testable and human-readable specification, a selection of backend packages to connect with various databases, and a boilerplate for developing new backends.
The DBI package defines generic methods that work almost identically across databases. This is checked by DBItest, which also provides a human-readable specification.
The RSQLite, MariaDB, and RPostgres packages implement methods defined by DBI that connect to specific databases. There are more packages that connect to other databases.
The RKazam package makes it easy for package developers to create a new package to a new DBMS.