Подтвердить что ты не робот

Ошибка подключения RODBC odbcDriverConnect()

Я пытаюсь использовать

odbcDriverConnect('driver={SQL Server};server=servername\instancename,port;database=testing;username=abc;password=123456') 

для подключения удаленного сервера базы данных (sql server 2008). Но я получил

[RODBC] ОШИБКА: состояние 08001, код 17, сообщение [Microsoft] [драйвер SQL Server ODBC] [DBNETLIB] SQL Server не существует или доступ запрещен.

ошибка. Любая идея?

Я могу использовать

odbcDriverConnect('driver={SQL Server};server=localhost;database=testing;trusted_connection=true') 

для подключения моего локального сервера базы данных (sql server 2008).

4b9b3361

Ответ 1

Правильный синтаксис должен быть:

odbcDriverConnect('driver={SQL Server};server=servername\\instancename,port;database=testing;uid=abc;pwd=123456')

Если вы используете метод проверки подлинности Windows:

odbcDriverConnect('driver={SQL Server};server=servername\\\\instancename,port;database=testing;trusted_connection=true')

Слэш выглядит как escape-символ, который выходит из слэша.

Ответ 2

Для Microsoft ODBC Driver 11 для SQL Server в Linux с RODBC версии 1.3-7 в R версии 3.0.1 ни один из вышеперечисленных ответов не работал. Однако было выполнено следующее:

dbconnection <- odbcDriverConnect("Driver=ODBC Driver 11 for SQL Server;
                Server=127.0.0.1; Database=MyDBName; 
                Uid=MyName; Pwd=XXXX")

(введите соответствующий IP-адрес, имя базы данных и т.д.).

В случае надежного соединения:

dbconnection <- odbcDriverConnect("Driver=ODBC Driver 11 for SQL Server;
                Server=127.0.0.1; Database=MyDBName; 
                Uid=MyName; Pwd=XXXX; trusted_connection=yes")

trusted_connection будет слушать только "да" или "нет", а не "истина" и "ложь"

Ответ 3

1.Connet для MySQL

a) если Mysql установлен в вашей системе, если он не установлен.

b) загрузите RMySQL IN R

library(RMySQL)

drv = dbDriver("MySQL 5.0.1")

убедитесь, что версия MySQL верна.

con = dbConnect(drv,host="localhost",dbname="test",user="root",pass="root")

использовать локальный хост или использовать сервер i.e ip address

используйте требуемое имя базы данных, имя пользователя и пароль

album = dbGetQuery(con,statement="select * from table")

выполнить требуемый запрос

close(con)

2. Другой способ подключения базы данных

a) сначала установите любую базу данных, такую ​​как MySQL, Oracle, SQL Server

b) установите соединитель ODBC для базы данных

library(Rodbc)

channel <- odbcConnect("test", uid="ripley", pwd="secret")

test - это имя соединения odcc-коннектора, пользователю которого нужно установить вручную

пользователь может найти это в приложении "Администратор"

res <- sqlFetch(ch, "table name")

Таблица может быть получена как фрейм данных

res<-sqlQuery(channel, paste("select query"))

часть условия with одна таблица может быть получена как фрейм данных

sqlSave(channel, dataframe)

чтобы сохранить данные в базе данных (не используйте "res < -" что-то вроде этого)

как пользователь может использовать

sqlCopy() sqlDrop()

sqlTables()

close(channel)

всегда закрывать соединение