RODBC连接限制行

时间:2013-06-18 23:24:05

标签: r odbc netezza

我设置了一个ODBC连接到Netezza(SQL数据库)。连接很好。但是,R默认只拉出256行,并限制它可以拉出的行数。

如果我在Netezza中运行查询,它将返回总行数(300k)。我期待R中的行数相同。但是,它只返回256行,相差300k。

我正在使用NetezzaSQL版本7.00.02 NSQLODBC.DLL

的驱动程序

我尝试在“驱动程序选项”中将预取计数更改为零 控制面板>管理工具>数据源(OBBC)>系统DNS

它不起作用。有什么想法吗?

3 个答案:

答案 0 :(得分:7)

我认为RODBC对Netezza表现不佳。解决方案http://datamining.togaware.com/survivor/Database_Connection.html

只需将believeNRows=FALSE添加到您的sqlQueryodbcConnect电话中(如果您还使用sqlFetch,请使用更晚的电话。

答案 1 :(得分:2)

您也可以尝试使用JDBC驱动程序:

library(RJDBC)
drv <- JDBC("org.netezza.Driver", "nzjdbc.jar", "'")

conn <- dbConnect(drv, "jdbc:netezza://host:5480/database", "user", "password")

res <- dbSendQuery(conn, "select * from mytable")

这样你就不用处理DSN等了。

答案 2 :(得分:0)

我知道这有点过时但问题不在于RODBC包。问题在于如何在Windows中配置连接时设置ODBC连接,您将在设置中看到最后一个选项卡,您可以在其中指定要获取的行数。默认值为256。