Ошибка подключения RODBC odbcDriverConnect()
Я пытаюсь использовать
odbcDriverConnect('driver={SQL Server};server=servername\instancename,port;database=testing;username=abc;password=123456')
подключить удаленный сервер базы данных (sql server 2008). Но я получил
[RODBC] ОШИБКА: состояние 08001, код 17, сообщение [Microsoft][Драйвер ODBC SQL Server][DBNETLIB]SQL Server не существует или доступ запрещен.
ошибка. Любая идея?
я могу использовать
odbcDriverConnect('driver={SQL Server};server=localhost;database=testing;trusted_connection=true')
подключить мой локальный сервер базы данных (SQL Server 2008).
3 ответа
Правильный синтаксис должен быть:
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')
Слэш выглядит как спасательный персонаж, убегающий слеш работает.
Для 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
будет слушать только "да" или "нет", а не "правда" и "ложь"
1. Подключитесь к MySQL
а) если Mysql установлен в вашей системе, если не установить его.
б) скачать RMySQL IN R
library(RMySQL)
drv = dbDriver("MySQL 5.0.1")
убедитесь, что версия MySQL верна.
con = dbConnect(drv,host="localhost",dbname="test",user="root",pass="root")
использовать локальный хост или использовать сервер т.е. IP-адрес
используйте необходимые имя базы данных, имя пользователя и пароль
album = dbGetQuery(con,statement="select * from table")
выполнить требуемый запрос
close(con)
2. Другой способ подключения базы данных
а) сначала установите любую базу данных, такую как MySQL,Oracle,SQL Server
б) установить разъем ODBC для базы данных
library(Rodbc)
channel <- odbcConnect("test", uid="ripley", pwd="secret")
test - это имя соединения odbc conector, которое пользователь должен установить вручную
пользователь может найти это в инструменте администратора
res <- sqlFetch(ch, "table name")
Таблица может быть извлечена как фрейм данных
res<-sqlQuery(channel, paste("select query"))
часть таблицы с условием одна может быть извлечена как фрейм данных
sqlSave(channel, dataframe)
сохранить фрейм данных в базу данных (не используйте "res<-" что-то вроде этого)
как пользователь может использовать
sqlCopy()
sqlDrop()
sqlTables()
close(channel)
всегда закрывать связь
Похоже, вы пытаетесь подключиться к SQL Server. Этот фрагмент кода должен работать, у меня он сработал:
библиотека ("RODBC")
connection <- DBI:: dbConnect (odbc:: odbc (), Driver = "SQL Server", Server = "Имя вашего сервера", Database = "Имя вашей базы данных", UID = "Имя вашей базы данных", UID = "Ваше Вход на сервер ", PWD =" Пароль вашего сервера ", порт = 1433)