недопустимое значение из универсальной функции 'dbListFields', класс “числовой”, ожидаемый “символ”

0

Я пытаюсь прочитать таблицу из базы данных и получить ошибку: Ошибка в.valueClassTest(ans, "character", "dbListFields"): недопустимое значение из общей функции 'dbListFields, class "numeric", ожидаемый "символ"

Вот мой код:

library(RMySQL)
library(dbConnect)
mydb = dbConnect(MySQL(), user='user',
             password='pwd', dbname='blank_copy',
             host='IPaddress', port=portnumber)
dbListTables(mydb)
dbListFields(mydb, 'SELECT * FROM tablename')

Я не знаю, почему возникает такая ошибка класса для этой конкретной таблицы.

Может ли кто-нибудь помочь мне в этой ошибке?

Спасибо вам.

Теги:

1 ответ

0
Лучший ответ

Вам необходимо передать имя таблицы в качестве второго аргумента для dbListFields в документации.

Поэтому вы должны сделать что-то вроде этого:

library(RMySQL)
library(dbConnect)
mydb = dbConnect(MySQL(), user='user',
         password='pwd', dbname='blank_copy',
         host='IPaddress', port=portnumber)
tables <- dbListTables(mydb)
#tables is a character vector, so you can just pass a subset of that
fields <- dbListFields(mydb, tables[1])
  • 0
    Спасибо, Рэндалл.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню