For a given table this function returns detailed information on
all fields / columns. The expectation is that this is a relatively thin
wrapper around the ODBC SQLColumns
function call, with some of the field
names renamed / re-ordered according to the return specifications below.
odbcConnectionColumns(conn, name, ..., exact = FALSE)# S4 method for OdbcConnection,Id
odbcConnectionColumns(conn, name, ..., column_name = NULL, exact = FALSE)
# S4 method for OdbcConnection,character
odbcConnectionColumns(
conn,
name,
...,
catalog_name = NULL,
schema_name = NULL,
column_name = NULL,
exact = FALSE
)
# S4 method for OdbcConnection,SQL
odbcConnectionColumns(conn, name, ..., exact = FALSE)
data.frame with columns
name
field.type - equivalent to type_name in SQLColumns output
table_name
schema_name
catalog_name
data_type
column_size
buffer_length
decimal_digits
numeric_precision_radix
remarks
column_default
sql_data_type
sql_datetime_subtype
char_octet_length
ordinal_position
nullable
OdbcConnection
Catalog, schema, and table identifiers.
By default, are interpreted as a ODBC search pattern where _
and %
are
wild cards. Set exact = TRUE
to match _
exactly.
additional parameters to methods
Set to TRUE
to escape _
in identifier names so that it
matches exactly, rather than matching any single character. %
always
matches any number of characters as this is unlikely to appear in a
table name.
The name of the column to return, the default returns all columns.
In dbWriteTable()
we make a call to this method
to get details on the fields of the table we are writing to. In particular
the columns data_type
, column_size
, and decimal_digits
are used. An
implementation is not necessary for dbWriteTable()
to work.
odbcConnectionColumns
is routed through the SQLColumns
ODBC
method. This function, together with remaining catalog functions
(SQLTables
, etc), by default ( SQL_ATTR_METADATA_ID == false
) expect
either ordinary arguments (OA) in the case of the catalog, or pattern value
arguments (PV) in the case of schema/table name. For these, quoted
identifiers do not make sense, so we unquote identifiers prior to the call.
The ODBC documentation on SQLColumns for further details.
The ODBC documentation on Arguments to catalog functions.