RODBC odbcDriverConnect() Connection Error

佐手、 提交于 2019-11-26 20:21:29
lijie98

The correct syntax should be:

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

If you use Windows Authentication method:

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

Slash seems like an escape character, escaping slash works.

For the Microsoft ODBC Driver 11 for SQL Server on Linux with RODBC version 1.3-7 in R version 3.0.1 none of the above answers worked. What did work however was the following:

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

(put in the relevant IP address, database name etc.).

In case of a trusted connection:

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 will only listen to "yes" or "no" and not to "true" and "false"

1.Connet to MySQL

a)if Mysql is installed in your system, if not install it.

b)download the RMySQL IN R

library(RMySQL)

drv = dbDriver("MySQL 5.0.1")

make sure MySQL version is correct.

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

use local host or use the server i.e ip address

use the required database name, user name and password

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

run required query

close(con)

2.Another way to connect database

a)first install any database like MySQL,Oracle,SQL Server

b)install the ODBC connector for database

library(Rodbc)

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

test is the connection name of odbc conector which user has to set manualy

user can find this in Administrator tool

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

A table can be retrieved as a data frame

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

part of the with condition one table can be retrieved as a data frame

sqlSave(channel, dataframe)

to save a dataframe to the database(dont use "res<-" something like this)

like user can use

sqlCopy() sqlDrop()

sqlTables()

close(channel)

always close the connection

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!