r - 使用 JDBC 连接 R 和 Teradata

标签 r teradata rodbc rjdbc

我正在尝试使用 RJDBC 连接 R 和 Teradata。

我找到了这个 link有一个使用 mysql 的例子,但我不确定如何使用 teradata 做同样的事情。

library(RJDBC)
drv <- JDBC("com.mysql.jdbc.Driver",
           "/etc/jdbc/mysql-connector-java-3.1.14-bin.jar",
           identifier.quote="`")
conn <- dbConnect(drv, "jdbc:mysql://localhost/test", "user", "pwd")

我已经下载了这个驱动程序:
http://downloads.teradata.com/download/connectivity/jdbc-driver
但我不确定我应该在哪里引用该目录。

我知道有一个 teradataR 包 out there ,但我不知道它是否真的适用于 R 3.0.0。

目前,我只是对从数据库中提取数据感兴趣。像 SELECT * FROM table 一样简单的事情.问题是 RODBC 很慢...

是否有其他选项可以完成此任务?

最佳答案

使用 R 控制台,输入以下步骤以建立 Teradata 连接:

drv = JDBC("com.teradata.jdbc.TeraDriver","ClasspathForTeradataJDBCDriverFiles") 

例子:
drv = JDBC("com.teradata.jdbc.TeraDriver","c:\\terajdbc\\terajdbc4.jar;c:\\terajdbc\\tdgssconfig.jar")  

注意:UNIX 机器上的路径将使用单个正斜杠来分隔其组件和文件之间的冒号。
conn = dbConnect(drv,"jdbc:teradata://DatabaseServerName/ParameterName=Value","User","Password") 

例子:
conn = dbConnect(drv,"jdbc:teradata://jdbc1410ek1.labs.teradata.com/TMODE=ANSI,LOGMECH=LDAP","guestldap","passLDAP01")

注意:连接参数是可选的。第一个 ParameterName 与 DatabaseServerName 由正斜杠字符分隔。
dbGetQuery(conn,"SQLquery")

例子:
dbGetQuery(conn,"select ldap from dbc.sessioninfov where sessionno=session")

关于r - 使用 JDBC 连接 R 和 Teradata,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20998653/

相关文章:

java - Teradata CLOB 批处理对 JDBC 没有用吗?

sql - 使用 RODBC 插入到 MS-Access 数据库中的备注字段时“无法分配内存”

sql-server - RODBC 连接的 SQL Server 查询失败,可在 SQL Server 中运行

使用 tabyl 运行多个交叉表

r - 计算 MaxEnt 和 BIOMOD 的 ROC/AUC

r - 通过函数将分配的对象保留在工作区中

sql - Teradata 中的条件总和和计数(SQL 帮助)

database - 如何使用 BTEQ 将索引加载到 Teradata Server

mysql - 尝试使用 RODBC 将 R 连接到 MySQL 时出错

r - R Markdown中的调试代码