spec_sql_remove_table
Failure modes
If the table does not exist, an error is raised. An attempt to remove a view with this function may result in an error.
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.
Additional arguments
The following arguments are not part of the dbRemoveTable()
generic
(to improve compatibility across backends)
but are part of the DBI specification:
temporary
(default:FALSE
)fail_if_missing
(default:TRUE
)
These arguments must be provided as named arguments.
If temporary
is TRUE
, the call to dbRemoveTable()
will consider only temporary tables.
Not all backends support this argument.
In particular, permanent tables of the same name are left untouched.
If fail_if_missing
is FALSE
, the call to dbRemoveTable()
succeeds if the table does not exist.
Specification
A table removed by dbRemoveTable()
doesn't appear in the list of tables
returned by dbListTables()
,
and dbExistsTable()
returns FALSE
.
The removal propagates immediately to other connections to the same database.
This function can also be used to remove a temporary table.
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:
dbRemoveTable()
will do the quoting, perhaps by callingdbQuoteIdentifier(conn, x = name)
If the result of a call to
dbQuoteIdentifier()
: no more quoting is done
See also
Other sql specifications:
spec_sql_append_table
,
spec_sql_create_table
,
spec_sql_exists_table
,
spec_sql_list_fields
,
spec_sql_list_objects
,
spec_sql_list_tables
,
spec_sql_quote_identifier
,
spec_sql_quote_literal
,
spec_sql_quote_string
,
spec_sql_read_table
,
spec_sql_unquote_identifier
,
spec_sql_write_table