我正在尝试使用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很慢......
还有其他选项可以执行此任务吗?
答案 0 :(得分:8)
使用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")