0.2-8 2020-03-06 * re-use Java helper for subsequent fetch() calls on the same result set which should make them more efficient. * set `has.completed` only if the fetch() has encountered end of the result set (#73) * add `use.label` argument to fetch() - if set to `FALSE` then column names are used instead of labels (#74) * change both semantics and defaults for `append=FALSE` and `overwrite=FALSE` in dbWriteTable() to match what is documented in `DBI`: append=TRUE no longer requires the existence of the target table and the options are mutally exclusive (i.e. append=TRUE, overwrite=TRUE is illegal). * dbWriteTable() also gains `force=TRUE` option (disabled by default) which skips the existence check for the target and proceeds with removal and/or insertion regardless. This can be useful with append=TRUE where the target is not a table and thus would not pass the dbExistsTable() check (see #27). * dbRemoveTable() returns TRUE on success (#20). On failure it will fail with an error if silent=FALSE (as it always did so far) or return FALSE if silent=TRUE. * JDBC errors are reported such that the statement is shown at the end. Previously the statement preceded the JDBC error, so long statements caused errors to be truncated (#32). This also opens up the possibility of more structured error objects. * n, block and use.label are now passed through from dbGetQuery() to fetch() (#44) 0.2-7 2018-01-24 * cosmetic changes to appease CRAN 0.2-6 2018-01-05 * move java-src to java * add schema= argument to dbGetTables() and dbListTables() * support vectorized version of dbSendUpdate() which uses batch-inserts for more efficient loading. Note that only prepared statements work for now. * use column labels instead of names (#36) * dbColumnInfo() will return the column label in `name' and column name in `field.name' (which is optional, for compatbility). 0.2-5 2014-12-18 * fix bug in dbUnloadDriver() returning NULL instead of FALSE * added block argument to fetch() currently defaulting to 2048 which controls the fetch size. Note that 0.2-4 has set this to the stride which was much too big for some databases therefore it is now configurable. (issue #10) * recover if setFetchSize() fails since some drivers don't take it as a hint and fail regardless (issue #11) 0.2-4 2014-06-26 * set fetch size to match the capacity for better performance with some drivers. (thanks Jesse Rohland) * close DB objects explicitly (issue #4) to avoid Oracle DB running out of resources * add support for dbHasCompleted() even in older DBI versions 0.2-3 2013-12-12 * fix duplicate connection object (issue #1) 0.2-2 2013-12-03 * add dbGetTables() and dbGetFields() which are similar to dbListTable() and dbListFields() but return a full data frame as obtained from the corresponding JDBC calls. * add support for stored procedure call JDBC syntax. Currently only IN parameters are supported since DBI doesn't provide a way to retrieve OUT parameters. * JDBC now uses path.expand() on the classPath components 0.2-1 2012-11-30 * add support for dbWriteTable(..., append=TRUE) * pass any additional arguments to dbConnect() as properties to the connection * use prepared statements only if parameters are passed, otherwise use simple statements (this allows to work around bugs in drivers that do not support prepared statements properly) * dbGetQuery() explicitly closes the statement before it returns to work arround issues in the Teradata driver. 0.2-0 2011-05-16 * use Java code to fetch results -- it should result in much higher throughput in pulling result sets from the database. It is also more efficient to use fetch() with n specified (especially if you know it in advance) than relying on n = -1. The latter will try first run with n = 32k and then continue with n = 512k chunks and paste the results which is inherently slow (still much faster than the 0.1-x way which was fetching one record at a time). 0.1-6 2011-03-09 * fix a typo in dbClearResult * map NAs in query parameters into NULLs (thanks to Axel Klenk) * explicitly close statements right away (Oracle seems to need this) (thanks to Axel Klenk) * add "stat" slot (Statement object) to JDBCResult class to make sure the statement lives long enough to not close the result set * convert NULLs into NAs in numeric columns 0.1-5 2007-10-01 * instantiate driver's class and use a call to 'connect' as a fall-back if the DriverManager fails to find a proper driver. * fix SQL syntax in dbWriteTable (superfluous semicolon) * fix a typo in prepared statement code (thanks to Carl Grant for the last two bugfixes) 0.1-4 2007-03-05 * added SQL error information to most JDBC errors * use .jfindClass to load drivers 0.1-3 2007-02-21 * remove beforeFirst() as some DBMS don't like it. This also allows a sequential use of fetch() with a limit to load data in chunks. * fix a bug that caused NULL entries in string columns to fail in fetch() 0.1-2 2007-01-23 * fix dbDisconnect return value and update manuals 0.1-1 2007-01-17 * added pre-compiled statements and proper dbWriteTable 0.1-0 (not released) * drop pgsql access, switch to DBI 0.0-3 2006-03-05 * add direct insert support for pgsql 0.0-2 2005-10-12 * added converson of tables to data.frames 0.0-1 2005-05-02 * added type conversion (int, double, string) 0.0-0 2004-11-02 * first public release