Rscript для вставки кадра данных в MariaDB работал нормально. Никто ничего не изменил, но внезапно начал терпеть неудачу.
insertconnection <-
dbConnect(RMariaDB::MariaDB(),
user = 'user',
password = 'pwd',
dbname = 'db',
host = 'myhost.com'
)
dbWriteTable(
insertconnection,
name = "summary",
df,
append = TRUE,
overwrite = FALSE,
row.names = FALSE
)
Error in result_create(conn@ptr, statement, is_statement) :
Unknown column '$1' in 'field list' [1054]
Calls: dbWriteTable ... new -> initialize -> initialize -> result_create -> .Call
Нет такого поля $ 1
> names(df)
[1] "hit" "id" "reference" "province"
[5] "town" "type" "level" "assess"
Вот краткое изложение данных.
> str(df)
'data.frame': 314322 obs. of 8 variables:
$ hit : num 3568 3617 3624 3625 3627 ...
$ id : chr "184340" "11440" "38440" "58440" ...
$ reference : chr "18440" "18440" "18440" "18440" ...
$ province : chr "Alberta" "Alberta" "Alberta" "Alberta" ...
$ town : chr "unknown" "unknown" "unknown" "unknown" ...
$ type : chr "dat" "res" "dat" "res" ...
$ level : chr "AAO001005" "BBO001005" "CCO001005" "CRO001005" ...
$ assess: chr "[returned] IKJ" "Bk LOW" "Bk UP" "Bk LOW" ...
Здесь команда создания таблицы.
CREATE TABLE `summary` (
`hit` INT(11) NULL DEFAULT NULL,
`id` INT(11) NULL DEFAULT NULL,
`reference` TEXT NULL,
`province` TEXT NULL,
`town` TEXT NULL,
`type` TEXT NULL,
`level` TEXT NULL,
`assess` TEXT NULL
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
;
Та же ошибка на разных компьютерах, использующих сервер Rstudio