我尝试使用RODBC软件包建立从ubuntu到mssql server的连接。
我确实让它与RJDBC一起工作,但读取速度可能比ODBC慢得多,所以我想测试它。
我没有可用的dsn,ip port databasename usr pwd是我可以使用的所有信息。
与RJDBC一起使用的代码是:
drv <- JDBC("com.microsoft.sqlserver.jdbc.SQLServerDriver",
"/media/sqljdbc4.jar")
RJDBC::dbConnect(drv, 'jdbc:sqlserver://ip:port;databaseName=databasename', 'usr', 'pwd')
尝试了很多浏览不同的语法,但无法使其工作。
RODBC::odbcDriverConnect('driver={SQL Server};server=ip:port;database=databasename;uid=usr;pwd=pwd)
给我错误:[unixODBC] [驱动程序管理器]找不到数据源名称,并且没有指定默认驱动程序
我是否需要将驱动程序下载到ubuntu机器?认为它们包含在包中。
答案 0 :(得分:0)
RODBC套餐不包含驱动程序。鉴于有多少可能性,这将是笨拙的。 见https://cran.r-project.org/web/packages/RODBC/vignettes/RODBC.pdf
&#34;与特定DBMS的连接需要ODBC驱动程序:这些可能 随附DBMS或ODBC驱动程序管理器或提供 由DBMS开发人员单独组成,并且有第三方 开发商&#34;
Microsoft为Ubuntu提供驱动程序: https://www.microsoft.com/en-us/download/details.aspx?id=50419
您可以在大多数Linux发行版中将dsn条目添加到/etc/odbc.ini文件中。请参阅ubuntu https://help.ubuntu.com/community/ODBC