Ошибка при попытке подключить R к PostgreSQL с помощью RODBC

StackOverflow https://stackoverflow.com/questions/5807766

  •  24-10-2019
  •  | 
  •  

Вопрос

Я пытаюсь подключиться к R, используя RODBC. Однако, когда я бегу

ch <- odbcConnect("rails_dev", uid="skline", pwd="d0gsleep")

Я получаю эту ошибку:

In odbcDriverConnect("DSN=rails_dev;UID=skline;PWD=d0gsleep") :
  [RODBC] ERROR: state IM002, code 0, message [iODBC][Driver Manager]Data source name not found and no default driver specified. Driver could not be loaded

Какие-нибудь мысли? Я новичок в этом и не потерпел убытки за то, что делать дальше ... Большое спасибо заранее!

Примечание я использую Mac OSX

Это было полезно?

Решение

РЕДАКТИРОВАТЬ: Ответ ниже устарел, так как некоторые из упомянутых пакетов больше не доступны на CRAN. Я оставляю это здесь для справки.

Более позднюю информацию можно найти в следующем вопросе:

Как подключить R с PostgreSQL на OSX 10.10.2?


Для подключения к PostgreSQL на Mac вы можете использовать пакет RpgSQL. Анкет Обязательно прочитайте Установка заметок, поскольку ваша установка PostgreSQL должна быть настроена для использования JDBC. Это, безусловно, самый простой путь. Если вы установите PostgreSQL, вы запускаете строитель стека в конце процесса установки, чтобы сделать это (см. инструкция по установке) В качестве альтернативы, вы можете использовать строитель стека (включенный в установку PostgreSQL) после установки, чтобы добавить дополнительные компоненты. В рамках драйверов базы данных вы должны найти PostgreSQL JDBC.

А rdbi Пакет, упомянутый в комментариях, удален из Cran, а AFAIK больше не поддерживается.

Если вам действительно нужно использовать ODBC, вам нужен драйвер для PostgreSQL, и он должен быть известен реализации ODBC на вашем компьютере. Водитель Джим М. дал вам один вариант, другой - драйверы OpenLinksw или «официальный» один на pgfoundry. Анкет Обычно вы должны быть в состоянии скачать драйвер ODBC из Stack Builder, как вы делаете для драйвера JDBC: под драйверами базы данных заголовок у вас также есть PostgreSQL ODBC.

Для новейших версий OSX вам нужно, по -видимому, установить свой собственный менеджер ODBC. Рядом с тем, что упомянут в комментариях, у вас есть тот, который также есть от Apple здесь. Анкет В этом менеджере вы можете указать местоположение драйвера и т. Д. И настроить соединение с PostgreSQL через ODBC. Как это сделать, зависит от менеджера, который вы используете, и объясняется в файлах справки. Всегда интересно прочитать соответствующий раздел в FAQ IODBC и разделы на ODBC на Mac.

На сеноте: в R вы можете проверить, какие DSN можно найти, используя команду odbcDataSources() пакета RODBC. Если PostgreSQL не упоминается там, вы знаете, что сначала должны посмотреть на свою установку.

Другие советы

В зависимости от базы данных, к которой вы хотите подключиться, Фактические технологии Имеет драйверы для Mac OSX для баз данных с открытым исходным кодом (MySQL, PostgreSQL), Oracle, а также Microsoft Access и т. Д., И стоит около 35 долларов. Настройка в администраторе ODBC проста, хотите ли вы создать соединение для всех пользователей на машине (System DSN) или для конкретного пользователя, поскольку есть мастер, который будет проходить основные шаги.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top