Как правильно написать имя таблицы в функции dbGetQuery? - PullRequest
1 голос
/ 11 ноября 2019

У меня проблема с указанием имени таблицы в функции dbGetQeury.

Команда

data1 <- dbGetQuery(con, "select * from bank_schema.capital")

работает хорошо.

Но команда

data1 <- dbGetQuery(con, "select * from bank_schema.135_ratios")

выдает ошибку.

Где con - это объект подключения к базе данных postgreSQL.

Пожалуйста, помогите мне найти выход.

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

Ответы [ 2 ]

2 голосов
/ 11 ноября 2019

Postgres по умолчанию не поддерживает имена таблиц, начинающиеся с цифр (другие СУБД имеют такое же ограничение). Вам нужно будет указать имя таблицы. Рассмотрим:

data1 <- dbGetQuery(con, 'select * from bank_schema."135_ratios"')

Или:

data1 <- dbGetQuery(con, "select * from bank_schema.\"135_ratios\"")

Но, что еще лучше, было бы проще переименовать таблицу в нечто более стандартное (то есть не начинающееся с цифры), дляпример ratios_135.

1 голос
/ 11 ноября 2019

Вам нужно заключить в кавычки идентификатор с ":

data1 <- dbGetQuery(con, "select * from bank_schema.\"135_ratios\"")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...