R中的ODBC库--得到 "找不到数据源名称,也没有指定默认驱动程序 "的错误信息。

问题描述 投票:0回答:1

我有驱动程序工作的一切,因为我是完美地使用Power BI。我正在切换到R的一些计算,现在这个错误是爬上了。

install.packages("odbc")

    library(odbc)

    con<- dbConnect(odbc::odbc(),
                     driver = "[Cloudera ODBC Driver for Apache Hive]",
                     host = "[Confidential]",
                     Schema = "[Confidential]",
                     user = ("Confidential"),
                     password = ("Confidential"),
                     port = 8443)

我的ODBC连接是64位的

是否有一个特定的连接字符串,我需要在这里使用?

r odbc rodbc
1个回答
1
投票

这里有四个问题需要考虑。

  1. 最初,驱动程序周围有括号,这些都需要去掉。

    # original
    con<- dbConnect(odbc::odbc(),
                    driver = "[Cloudera ODBC Driver for Apache Hive]", ...)
    # fixed
    con<- dbConnect(odbc::odbc(),
                    driver = "Cloudera ODBC Driver for Apache Hive", ...)
    
  2. 我怀疑是错误的标签 user=password= 需要改变。每 https:/db.rstudio.comdatabaseshive。我想他们应该是 UID=PWD=分别为,。

  3. 由于连接错误表明连接加密(SSL)有问题,那么应向 DBI::dbConnect 来设置正确的选项。老实说,我不知道它们是什么,我也找不到关于它们是什么的文档,所以我忽略了这个问题。关于问题4...

  4. 你说你在你的 "ODBC数据源管理员(64位)",这是一个系统范围内的命名连接配置,并且您将此配置用于 Power BI(意味着那里的连接是良好的)。在上面的代码中,您没有使用该系统配置,而是从头开始定义它。由于已知系统配置是有效的,您可以使用该配置而不是重新定义,就像在

    con <- DBI::dbConnect(odbc::odbc(), dsn = "myhive", UID = "myuser", PWD = "mypass")
    

    哪儿 myhive 是您在ODBC数据源管理中指定的配置名称。

© www.soinside.com 2019 - 2024. All rights reserved.