По this:
MySQL распознает DATETIME и TIMESTAMP значения в этих форматах: Как строка в формате 'YYYY-MM-DD HH: MM: SS' или «YY-MM-DD HH : MM: SS 'формат.
Так одно решение для форматирования даты в нужном формате:
now <- as.POSIXlt(Sys.time())
now.str <- format(now,'%Y-%m-%d %H:%M:%S')
now.str
[1] "2013-02-26 04:12:24"
или в этом формате
format(now,'%Y%m%d%H%M%S')
[1] "20130226041224"
Затем обновите свою таблицу с помощью dbSendQuery
. Ниже приведен пример создания динамического запроса для любой таблицы и любой даты. Адаптируйте его к вашим потребностям.
table.Name <- "MY_TABLE"
query <- paste(paste('UPDATE ', table.Name,sep=''),
paste('SET datetime_column =' ,"'",now.str,"'",sep=''),
'WHERE id=1',sep='\n')
cat(query)
UPDATE MY_TABLE
SET datetime_column ='2013-02-26 04:12:24'
WHERE id=1
dbSendQuery(con, query)
Я также думаю, что это должно работать с dbWritetable
, как только вы форматировать даты в нужном формате. Но у меня нет MySQL для тестирования. Попробуйте и дайте мне знать, если это поможет.
Временные переменные импортируются/экспортируются как символьные данные, поэтому вам необходимо преобразовать их в ваше любимое представление даты/времени. – agstudy
@agstudy: Достаточно легко преобразовать символьные данные в даты в R. Но как мне обновить поле SQL DATETIME от R? Есть ли двоичный формат, который я могу использовать для переноса между ними? – Charles