I seem to be doing something wrong when trying to use setDefaults
. If I enter each argument every time I use getSymbols.MySQL
, it seems to work fine but I get an error when doing the following:
> setDefaults(getSymbols.MySQL,
user = 'root',
password = '********',
dbname = 'psedata',
db.fields = c("date", "open", "high", "low", "close", "volume", "adj"),
field.names = c("date", "open", "high", "low", "close", "volume", "adj"),
env = .GlobalEnv)
> getSymbols('ALI', src = 'MySQL')
Error in .local(conn, statement, ...) :
could not run statement: FUNCTION psedata.c does not exist
However, the following works:
> getSymbols.MySQL('ALI',
user = 'root',
password = '********',
dbname = 'psedata',
db.fields = c("date", "open", "high", "low", "close", "volume", "adj"),
field.names = c("date", "open", "high", "low", "close", "volume", "adj"),
env = .GlobalEnv)
[1] "ALI"
I feel like I'm missing something obvious but I really can't find it.
This looks like a bug (either in setDefaults
or importDefaults
), and the following code seems to produce a query that will work. Note that this is untested, because I don't have a MySQL database available.
setDefaults(getSymbols.MySQL,
user = 'root',
password = '********',
dbname = 'psedata',
db.fields = quote(c("date", "open", "high", "low", "close", "volume", "adj")),
field.names = quote(c("date", "open", "high", "low", "close", "volume", "adj")),
env = .GlobalEnv)