gpt4 book ai didi

mysql - RODBC 中的 sqlSave 仅保存 R 中日期的年份

转载 作者:行者123 更新时间:2023-11-29 21:01:47 25 4
gpt4 key购买 nike

我将 R 与我的 mysql 数据库连接起来。当我使用命令 sqlSave(channel, dataframe) 时,我的数据帧将被写入数据库,但所有在 R 中编码为日期的条目(类“POSIXct”“POSIXt”,例如“2016- 01-01 CET”)只有年份会记录在mysql数据库中。这怎么可能?
感谢您的帮助。

编辑:列类型为“ double ”。所以我猜 sqlSave 无法保存为日期/时间?

最佳答案

我使用了确切的函数,但是来自library(RMySQL),如下所示,它对我有用。首先确保您的数据格式正确:

toSql$Date<-as.POSIXct(strptime(toSql$Date,"%Y-%m-%d %H:%M",tz="GMT"))

然后还要确保在创建表时使用 TIMESTAMP 作为列类型:

create table table_name(
ID INTEGER,
DATE TIMESTAMP,
PRIMARY KEY(ID)
)
;

保存到数据库后如下所示:

dbWriteTable(con, name = "table_name", toSql, overwrite=FALSE,   
append=TRUE,row.names = NA)

也许还要确保您的数据帧的名称相同:

names(toSql)
[1] "ID" "DATE"

关于mysql - RODBC 中的 sqlSave 仅保存 R 中日期的年份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37163703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com