Я успешно подключился к базе данных MYSQL и попытался вернуть свой результат в базу данных: dbWriteTable(con,"predicted min",forecast$min)
где прогноз $ min - это всего лишь вектор удвоений.Как решить эту ошибку - dbWriteTable()
Я получил сообщение об ошибке:
Error in (function (classes, fdef, mtable) : unable to find an inherited method for function ‘dbWriteTable’ for signature ‘"MySQLConnection", "character", "numeric"’
Я предполагаю, что я нужен объект dataframe для моего третьего параметра, поэтому я попытался это: dbWriteTable(con,"predicted min",data.frame(min=forecast0.1$min))
Но получил эту ошибку:
Error in .local(conn, statement, ...) : could not run statement: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '(
row_names
text,min
double )' at line 2
Я использую SQLyog. Я не знаю, связано ли это с этой проблемой. Какие-либо предложения? Заранее спасибо.
Sophie
Привет @Josh, он по-прежнему дает мне второе сообщение об ошибке, ошибку в синтаксисе SQL. – Sophie
Вы всегда можете просто скомпоновать свой собственный оператор INSERT. I.e., 'query = sprintf (" INSERT INTO% s (min) VALUES (% d) ", tablename, forecast0.1 $ min)'. Затем 'sqlQuery (канал, запрос)'. И сделайте это для каждой строки. Это предполагает, что таблица уже существует. Также вы уверены, что в вашем имени таблицы есть пробел? Не уверен, что это сработает. –
Спасибо, что напомнил мне. Имя таблицы (не должно быть пробела) дает мне ошибку. Спасибо, @Josh – Sophie