通过rodbc写入mysql数据库的posix被截断

时间:2015-03-08 20:01:01

标签: mysql r rodbc

当我使用RODBC将一个类POSIXct列写入MySQL数据库时,它被截断到只有一年。 例如,这发生在:

sqlSave(connection, dat = data.frame(date = as.POSIXct("2015-01-01 08:10:00")+0:10*60), 
    tablename = "date_column")

我该如何避免这种情况?

1 个答案:

答案 0 :(得分:1)

您可能需要在mysql中明确地创建datetime类型的列,如下所示:

library(RODBC)
con <- odbcConnect("mysql", uid="root", case = "tolower")
(dat <- data.frame(date = Sys.time()))
#                  date
# 1 2015-03-08 23:55:33
res <- sqlSave(con, dat = dat, varTypes = c("date" = "datetime"), tablename = "date_column")
close(con)