我构建了一个r闪亮的应用程序,该应用程序使用odbc库从公共服务器中托管的服务器中获取数据并显示结果输出。它在Win10下运行良好。
我正在使用以下代码连接到服务器:
library(odbc)
con <- dbConnect(odbc(),
Driver = "SQL Server Native Client 11.0",
Server = "****",
Database = "****",
UID = "****",
PWD = "****")
当我在www.shinyapps.io上托管应用程序时,它无法正常工作。它显示如下错误:
Warning: Error in : nanodbc/nanodbc.cpp:950: 01000: [unixODBC][Driver Manager]Can't open lib 'SQL Server Native Client 11.0' : file not found
我无法解释为什么显示“找不到文件”?当我从PC上使用rstudio运行该应用程序时,该应用程序运行完美。
请帮助。 预先感谢。
Sumanta
答案 0 :(得分:0)
您必须使用FreeTDS。我发现使用7.4或7.0版本。
使用odbc尝试此操作:
library(DBI)
library(odbc)
con <- dbConnect(
odbc(),
Driver = "FreeTDS",
Database = database,
Uid = uid,
Pwd = pwd,
Server = server,
Port = 1433,
TDS_Version = 7.4
)
或此usind rodbc:
library(RODBC)
con <- odbcDriverConnect(
'Driver=FreeTDS;
TDS_Version=7.4;
Server=<server>;
Port=<port>;
Database=<db>;
Uid=<uid>;
Pwd=<pw>;
Encrypt=yes;
TrustServerCertificate=no;
Connection Timeout=30;')