我一直在尝试执行一个非常长的SQL查询并将结果输入到R中的数据框中。但是以下行会引发错误并在控制台中显示部分查询(截断它)
my_dataframe <- dbGetQuery(conn, my_large_query)
查询的长度是10564个字符,我使用了很多CTE。
我已经通过R studio中的选项菜单删除了字符串截断,但我想知道R中的dbGetQuery
函数是否存在字符限制?
有什么建议吗?
答案 0 :(得分:1)
您提到更改了&#39;字符串截断&#39;,但是如何warning.length
?
options("warning.length"={integer})
我还建议您先在任何适用于您的数据库的GUI中测试查询。当您验证查询没有问题时,请在R中运行它。
当dbGetQuery(假设DBI包)抛出sql / database错误时,错误的实际内容将不会显示,直到查询的全文之后。换句话说,如果查询文本在R错误输出中被截断,则数据库错误代码/文本将根本不可见。问题可能非常简单,例如无法匹配的括号或缺少逗号。
请注意错误消息是以Error in dbGetQuery
(R问题)还是Error in .verify.JDBC.result
(数据库问题)开头。