Changes in version 0.4.0 (2025-03-18) - Added support for DuckDB - Added support for returning option for dbxInsert and dbxUpsert for SQLite 3.35.0+ and SQL Server - Fixed typecasting with ODBC for MariaDB Changes in version 0.3.2 (2024-06-03) - Added support for returning option for dbxInsert and dbxUpsert for MariaDB 10.5+ Changes in version 0.3.1 (2023-12-11) - Added support for dbxUpsert for SQL Server - Fixed typecasting with ODBC Changes in version 0.3.0 (2023-12-01) - Fixed issue with RMariaDB 1.3.0+ - Fixed typecasting for empty results with RPostgreSQL 0.7 - Fixed warning with RPostgreSQL Changes in version 0.2.8 (2021-01-17) - Added support for SQL with returning option - Fixed time zones for RPostgres 1.3.0+ and RMariaDB 1.1.0+ Changes in version 0.2.7 (2020-09-08) - Fixed CRAN check with R-devel Changes in version 0.2.6 (2020-06-15) - Added transaction option to dbxUpdate - Added unsafe version check for RMySQL Changes in version 0.2.5 (2019-04-24) - Added support for tibbles - Improved error message for invalid database URL - Fixed error when where_cols ordering different than data frame Changes in version 0.2.4 (2019-01-03) - Added dbxExecute function - Added support for complex types - Fixed issues with NULL blobs with Postgres and SQLite Changes in version 0.2.3 (2018-10-30) - Added parameters for dbxSelect - Added skip_existing option to dbxUpsert - Fixed issue with batch_size option skipping partial batches Changes in version 0.2.2 (2018-09-15) - Added statement duration to logging - Added logging for dbxUpdate transaction - Added variables to dbxConnect - Added connect_timeout, sslcert, sslkey, and sslcrl for RPostgreSQL - Prefer dbx_logging over dbx_verbose - Improved support for ODBC - Fixed error with dbxUpsert Changes in version 0.2.1 (2018-08-03) - Added sslmode and sslrootcert for RPostgreSQL - Fixed error with dplyr check Changes in version 0.2.0 - Added support for fractional seconds - Fixed error with updates - Fixed times for RSQLite - Fixed typecasting for dates, times, and booleans with RMySQL - Fixed error when writing binary objects with RPostgres and RPostgreSQL - Fixed error when writing dates with RMySQL and RMariaDB - Fixed error when writing booleans with RPostgreSQL - Fixed error when writing hms objects Breaking - The dbxInsert and dbxUpsert functions no longer return a data frame by default. For MySQL and SQLite, the data frame was just the records argument. For Postgres, if you use auto-incrementing primary keys, the data frame contained ids of the newly inserted/upserted records. To get the ids, pass name of the column as the returning argument: dbxInsert(db, table, records, returning=c("id")) - timestamp without time zone columns in Postgres are now stored in UTC instead of local time by default. This does not affect timestamp with time zone columns. To keep the previous behavior, use: dbxConnect(adapter="postgres", storage_tz=Sys.timezone(), ...) Changes in version 0.1.0 (2018-07-05) - First release