Неизвестный столбец в списке полей, ошибка Rmysql

Я написал data.frame, используя

dbWriteTable(con, name='db_all', df, overwrite=T, row.names=F) 

успешно в MySQL, используя RMySQL. Теперь у меня есть второй фрейм данных с аналогичной структурой, и я пытаюсь использовать

dbWriteTable(con,name='db_all',df1,append=T,row.names=F,overwrite=F)

что дает мне

Ошибка в .local(conn, statement,...): не удалось запустить оператор: Неизвестный столбец 'zzz' в 'списке полей'>

В моей таблице SQL у меня еще нет этого имени столбца, и я ожидал бы, что мой append=T добавит этот столбец в мою таблицу SQL, чего, по-видимому, нет.


person Luke    schedule 05.06.2016    source источник
comment
Бох, скорее всего, вам нужно сначала изменить структуру таблицы, а затем вы можете начать использовать новый столбец.   -  person michaJlS    schedule 05.06.2016


Ответы (2)


Как называется неизвестный столбец? Если это "row_names", то вам нужно установить параметр row.names = FALSE в dbWriteTable(). В противном случае он пытается включить имена строк в ваш фрейм данных в инструкции вставки.

person Jai Jeffryes    schedule 15.10.2019

Добавление добавит данные в таблицу, не будет изменять таблицу, добавляя столбцы.

Вам нужно указать свои столбцы, если имя не совпадает с именем в кадре данных, используя именованный список, например: field.types=list(dte="date", val="double(20,10)")

person Daniel Sobrado    schedule 22.01.2017