【发布时间】:2017-11-30 00:02:55
【问题描述】:
我刚刚问了一个关于使用 Shinyapps 时没有链接 SQL 的问题。 “first argument“ error when using shinyapps.io, rodbc to show sql query result in web。这是关于错误信息“第一个参数不是开放的 rodbc 通道”,当我尝试使用 shinyapps.io 共享我使用 RODBC 从 SQL 数据库获得的 SQL 查询结果时。
非常感谢 Lars Br. 的帮助,我想我还需要尝试 odbcDriverConnect 而不是 odbcConnect。看到https://support.rstudio.com/hc/en-us/articles/225408367-Connecting-to-databases-using-RODBC-on-shinyapps-io的一些建议,可以解决我的问题。
但是,我的问题是:由于我对所有这些东西都很陌生,所以我对 odbcDriverConnect 中的所有参数感到困惑。我试过了:
ch <- odbcDriverConnect('driver=SQL Server;server=HANARB1P;database=testing;uid=****;pwd=****;TrustServerCertificate=true')
我得到了以下信息:
Warning messages:
1: In odbcDriverConnect("driver=SQL Server;server=HANARB1P;database=testing;uid=****;pwd=****;TrustServerCertificate=true") :
[RODBC] ERROR: state 08001, code 17, message [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.
2: In odbcDriverConnect("driver=SQL Server;server=HANARB1P;database=testing;uid=****;pwd=****;TrustServerCertificate=true") :
[RODBC] ERROR: state 01000, code 53, message [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()).
3: In odbcDriverConnect("driver=SQL Server;server=HANARB1P;database=testing;uid=****;pwd=****;TrustServerCertificate=true") :
[RODBC] ERROR: state 01S00, code 0, message [Microsoft][ODBC SQL Server Driver]Invalid connection string attribute
4: In odbcDriverConnect("driver=SQL Server;server=HANARB1P;database=testing;uid=****;pwd=****;TrustServerCertificate=true") :
ODBC connection failed
到目前为止,我只有 DSN:HANARB1P。我不知道 odbcDriverConnect 中的驱动程序、服务器和数据库是什么。我在网上找不到定义。谁能给我解释一下?
我还从http://docs.rstudio.com/shinyapps.io/applications.html 中找到了一些可能有用的信息。它说:“如果您的闪亮应用程序需要访问您在组织防火墙后面运行的数据库,您的 IT 部门将需要知道哪些服务器将通过防火墙连接。以下是您必须列入白名单的 shinyapps.io IP 地址: ”。我不知道这是否与我的问题有关。如果是这样,我该如何设置这些东西?
【问题讨论】: