使用 R studio 与 dashDB 的 RODBC 连接
RODBC connection to dashDB using R studio
当尝试从 DSX 上的 rstudio ide 建立到 dashDB 的连接时,出现此错误:
[RODBC] ERROR: state IM002, code 0, message [unixODBC][Driver Manager]Data source name not found, and no default driver specified
这是填写后的
dsn_driver <- "{IBM DB2 ODBC Driver}"
dsn_database <- "BLUDB" # e.g. "BLUDB"
dsn_hostname <- "<Enter Hostname>" # e.g.: "awh-yp-small03.services.dal.bluemix.net"
dsn_port <- "50000" # e.g. "50000"
dsn_protocol <- "TCPIP" # i.e. "TCPIP"
dsn_uid <- "<Enter UserID>" # e.g. "dash104434"
dsn_pwd <- "<Enter Password>" # e.g. "7dBZ39xN6$o0JiX!m"
conn_path <- paste("DRIVER=",dsn_driver,
";DATABASE=",dsn_database,
";HOSTNAME=",dsn_hostname,
";PORT=",dsn_port,
";PROTOCOL=",dsn_protocol,
";UID=",dsn_uid,
";PWD=",dsn_pwd,sep="")
conn <- odbcDriverConnect(conn_path)
conn
所以这段代码对我不起作用。
我在这里缺少什么吗?我导入了 RODBC 库。
您是否按照以下 link 中的说明进行操作,您将需要安装 ibmdbR 包,因为它在下面 link.
中提到
您可以使用 odbcConnect()
并提供 dsn
字符串作为唯一必需的参数。在 DSX 上,IBM DB2 ODBC DRIVER 初始化为名称 BLUDB
(因此 dsn_driver <- 'BLUDB')。这是工作示例:
dsn_driver <- "BLUDB"
dsn_database <- "BLUDB" # e.g. "BLUDB"
dsn_hostname <- "<Enter Hostname>" # e.g.: "awh-yp-small03.services.dal.bluemix.net"
dsn_port <- "50000" # e.g. "50000"
dsn_protocol <- "TCPIP" # i.e. "TCPIP"
dsn_uid <- "<Enter UserID>" # e.g. "dash104434"
dsn_pwd <- "<Enter Password>" # e.g. "7dBZ39xN6$o0JiX!m"
conn_path <- paste(dsn_driver,
";DATABASE=",dsn_database,
";HOSTNAME=",dsn_hostname,
";PORT=",dsn_port,
";PROTOCOL=",dsn_protocol,
";UID=",dsn_uid,
";PWD=",dsn_pwd,sep="")
conn <- odbcConnect(conn_path)
conn
除了使用 odbcConnect,您还可以加载包 ibmdbR 并使用它的 idaConnect 方法和 dashDB 下推 data.frame API.
当尝试从 DSX 上的 rstudio ide 建立到 dashDB 的连接时,出现此错误:
[RODBC] ERROR: state IM002, code 0, message [unixODBC][Driver Manager]Data source name not found, and no default driver specified
这是填写后的
dsn_driver <- "{IBM DB2 ODBC Driver}"
dsn_database <- "BLUDB" # e.g. "BLUDB"
dsn_hostname <- "<Enter Hostname>" # e.g.: "awh-yp-small03.services.dal.bluemix.net"
dsn_port <- "50000" # e.g. "50000"
dsn_protocol <- "TCPIP" # i.e. "TCPIP"
dsn_uid <- "<Enter UserID>" # e.g. "dash104434"
dsn_pwd <- "<Enter Password>" # e.g. "7dBZ39xN6$o0JiX!m"
conn_path <- paste("DRIVER=",dsn_driver,
";DATABASE=",dsn_database,
";HOSTNAME=",dsn_hostname,
";PORT=",dsn_port,
";PROTOCOL=",dsn_protocol,
";UID=",dsn_uid,
";PWD=",dsn_pwd,sep="")
conn <- odbcDriverConnect(conn_path)
conn
所以这段代码对我不起作用。 我在这里缺少什么吗?我导入了 RODBC 库。
您是否按照以下 link 中的说明进行操作,您将需要安装 ibmdbR 包,因为它在下面 link.
中提到您可以使用 odbcConnect()
并提供 dsn
字符串作为唯一必需的参数。在 DSX 上,IBM DB2 ODBC DRIVER 初始化为名称 BLUDB
(因此 dsn_driver <- 'BLUDB')。这是工作示例:
dsn_driver <- "BLUDB"
dsn_database <- "BLUDB" # e.g. "BLUDB"
dsn_hostname <- "<Enter Hostname>" # e.g.: "awh-yp-small03.services.dal.bluemix.net"
dsn_port <- "50000" # e.g. "50000"
dsn_protocol <- "TCPIP" # i.e. "TCPIP"
dsn_uid <- "<Enter UserID>" # e.g. "dash104434"
dsn_pwd <- "<Enter Password>" # e.g. "7dBZ39xN6$o0JiX!m"
conn_path <- paste(dsn_driver,
";DATABASE=",dsn_database,
";HOSTNAME=",dsn_hostname,
";PORT=",dsn_port,
";PROTOCOL=",dsn_protocol,
";UID=",dsn_uid,
";PWD=",dsn_pwd,sep="")
conn <- odbcConnect(conn_path)
conn
除了使用 odbcConnect,您还可以加载包 ibmdbR 并使用它的 idaConnect 方法和 dashDB 下推 data.frame API.