我收到了一条警告信息:
`historicalHourly <- importHistoricalHourly(startDatePast,endDatePast,Markets,location)
[1] "Importing Hourly Data"
[1] "Flag - Moving from importHistoricalHourly to CleaningUpHourly"
[1] "Flag - Moving to importHistoricalDaily from CleaningUpHourly"Warning messages:
1: closing unused RODBC handle 41
2: closing unused RODBC handle 40
3: closing unused RODBC handle 36`
在函数中,所有内容都会检查返回值print print语句。 我有一个想法,由于这个功能,它绝对是一个警告:
hHourly.df <- retrievelim(PowerCodeID,columns,startDatePast,endDatePast,unitstr="Hours")
正在访问另一个程序中的单独数据库。此函数返回日期时间值的数据帧,以小时为单位,在下一列
中使用不同的数值如果有人能让我知道为什么关闭数据库以及发生了什么,我将不胜感激。
答案 0 :(得分:13)
这是因为该函数包含odbcConnect(...)
而不是odbcClose(...)
正如joran所暗示的那样。由于odbcConnect
对象是在函数内创建的,因此下次有垃圾收集时会挂起(?gc
)。有时,当你调用函数时会发生这种情况,有时它会在稍后发生。
当odbcConnect
对象被gc()
删除时,它会关闭数据库连接并显示一条消息。无需担心。