dbAppendTable() returns a scalar numeric. If the table does not exist, or the data frame with the new data has different column names, an error is raised; the remote table remains unchanged.

An error is raised when calling this method for a closed or invalid connection. An error is also raised if name cannot be processed with dbQuoteIdentifier() or if this results in a non-scalar. Invalid values for the row.names argument (non-scalars, unsupported data types, NA) also raise an error.


The name argument is processed as follows, to support databases that allow non-syntactic names for their objects:

  • If an unquoted table name as string: dbAppendTable() will do the quoting, perhaps by calling dbQuoteIdentifier(conn, x = name)

  • If the result of a call to dbQuoteIdentifier(): no more quoting is done

The row.names argument must be NULL, the default value. Row names are ignored. All other values for the row.names argument (in particular TRUE, NA, and a string) raise an error.