将 Netezza 调整参数与 RODBC 结合使用
Using Netezza tuning parameters with RODBC
我试图在我的 SQL 代码中将一些调整参数传递到我的 Netezza 数据库,但 RODBC 和 ODBC 包不喜欢它。
我已经在 Netezza 中直接尝试 运行 这个查询,它工作正常,但是当它使用 sqlQuery 封装时 returns 没有数据。
我的查询如下所示:
system.time(test <- as.data.table(sqlQuery(netezza_prod_conn,
"set JIT_SAMPLE_GROWTH_POWER = 0.54;
set PREBROADCAST_LIMIT = 30;
SELECT
NOW()")))
我相信它与分号有关,当它完成第一个查询时 returns 什么都没有,它永远不会继续下一个查询。
是否有解决方法可以在 sqlQuery 中包含多个 SQL 语句?
在我看来,与其他 3 个类别相比,这更像是一个“rodbc”包特定问题,但在我用谷歌搜索的所有地方,你的问题的“解决方案”是将字符串拆分为“ ;' 然后将每个作为单独的 sqlQuery
执行
我可以确认,只要您保持与 Netezza 的连接打开,它就不会在执行最后一条语句后“忘记”您的调整设置。
我试图在我的 SQL 代码中将一些调整参数传递到我的 Netezza 数据库,但 RODBC 和 ODBC 包不喜欢它。
我已经在 Netezza 中直接尝试 运行 这个查询,它工作正常,但是当它使用 sqlQuery 封装时 returns 没有数据。
我的查询如下所示:
system.time(test <- as.data.table(sqlQuery(netezza_prod_conn,
"set JIT_SAMPLE_GROWTH_POWER = 0.54;
set PREBROADCAST_LIMIT = 30;
SELECT
NOW()")))
我相信它与分号有关,当它完成第一个查询时 returns 什么都没有,它永远不会继续下一个查询。
是否有解决方法可以在 sqlQuery 中包含多个 SQL 语句?
在我看来,与其他 3 个类别相比,这更像是一个“rodbc”包特定问题,但在我用谷歌搜索的所有地方,你的问题的“解决方案”是将字符串拆分为“ ;' 然后将每个作为单独的 sqlQuery
执行我可以确认,只要您保持与 Netezza 的连接打开,它就不会在执行最后一条语句后“忘记”您的调整设置。