1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
% $Id: make.db.names-methods.Rd,v 1.1 2003/12/02 14:53:01 dj Exp dj $
\name{make.db.names-methods}
\docType{methods}
\alias{SQLKeywords-methods}
\alias{isSQLKeyword-methods}
\alias{make.db.names,MySQLObject,character-method}
\alias{SQLKeywords,MySQLObject-method}
\alias{SQLKeywords,missing-method}
\alias{isSQLKeyword,MySQLObject,character-method}
\title{
Make R/S-Plus identifiers into legal SQL identifiers
}
\description{
These methods are straight-forward implementations of the corresponding
generic functions.
}
\section{Methods}{\describe{
\item{dbObj}{
any MySQL object (e.g., \code{MySQLDriver}).
}
\item{snames}{
a character vector of R/S-Plus identifiers (symbols) from which
we need to make SQL identifiers.
}
\item{name}{
a character vector of SQL identifiers we want to check against
keywords from the DBMS.
}
\item{unique}{
logical describing whether the resulting set of SQL names should
be unique. Its default is \code{TRUE}. Following the SQL 92
standard, uniqueness of SQL identifiers is determined regardless
of whether letters are upper or lower case.
}
\item{allow.keywords }{
logical describing whether SQL keywords should be allowed in the
resulting set of SQL names. Its default is \code{TRUE}
}
\item{keywords}{
a character vector with SQL keywords, by default it is
\code{.MySQLKeywords} define in \code{RMySQL}. This may
be overriden by users.
}
\item{case}{
a character string specifying whether to make the comparison
as lower case, upper case, or any of the two.
it defaults to \code{any}.
}
\item{\dots}{currently not used.}
}
}
\references{
The set of SQL keywords is stored in the character vector
\code{.SQL92Keywords} and reflects the SQL ANSI/ISO standard as
documented in "X/Open SQL and RDA", 1994, ISBN 1-872630-68-8.
Users can easily override or update this vector.
MySQL does add some keywords to the SQL 92 standard, they are
listed in the \code{.MySQLKeywords} object.
See the Database Interface definition document
\code{DBI.pdf} in the base directory of this package
or \url{http://stat.bell-labs.com/RS-DBI}.
}
\seealso{
\code{\link{MySQL}},
\code{\link[DBI]{dbReadTable}},
\code{\link[DBI]{dbWriteTable}},
\code{\link[DBI]{dbExistsTable}},
\code{\link[DBI]{dbRemoveTable}},
\code{\link[DBI]{dbListTables}}.
}
\examples{\dontrun{
# This example shows how we could export a bunch of data.frames
# into tables on a remote database.
con <- dbConnect("MySQL", "user", "password")
export <- c("trantime.email", "trantime.print", "round.trip.time.email")
tabs <- make.db.names(export, unique = T, allow.keywords = T)
for(i in seq(along = export) )
dbWriteTable(con, name = tabs[i], get(export[i]))
}
}
\keywords{methods}
\keyword{interface}
\keyword{database}
% vim: syntax=tex
|