Как указать формат даты при отправке значений в базу данных SQLite из R studio? - PullRequest
0 голосов
/ 02 ноября 2019

У меня проблема при попытке вставить значения формата даты из R studio в базу данных SQLite.

Стоит отметить, что я загружаю файлы dbf в R studio, а затем отправляю данные из файлов dbf в базу данных SQLite.

Вот код, который я использовал. Существует два цикла чтения всех файлов dbf в указанном рабочем каталоге.

library(sqldf)
library(DBI)
library(foreign)
library("RSQLite")

setwd("F:~/Data")
con <- dbConnect(RSQLite::SQLite(), dbname = "bbbb.db")
for(path in c("F:~/data1"
          "F:~/data2")){

setwd(path)
ldf <- list() # creates a list
  listdbf <- dir(pattern = "*.DBF")
for (k in 1:length(listdbf)){
    ldf[[k]] <- read.dbf(listdbf[k])
     }
df1 <- ldf[[1]]
df2 <- ldf[[2]]
data1 <- sqldf("select a.date, a.REGN as regn, 
               sum(case when b.C1='000' then b.C3 else 0 end) as tot_cap,
               from df1 a
               inner join df2 b on (a.regn = b.regn)
               group by a.regn, a.dt
               order by a.regn")
dbWriteTable(con, name="capital", value=data1,  append= TRUE)
}       

В результате формат переменных даты в базе данных SQLite равен «18140» вместо «2019-10-01».

Я попытался изменить формат даты в таблице df1 в R studio с помощью кода

df1$date <- as.Date(as.POSIXct(df1$DT, format='%d.%m.YY'))

И это только один код среди многих других версий, которые я пытался изменить в формате даты.

Но я потерпел неудачу.

Есть какие-нибудь идеи по решению этой проблемы?

Заранее спасибо.

...