【发布时间】:2018-06-21 05:29:02
【问题描述】:
在使用 RODBC 查询 Oracle 数据库时,我遇到了隐藏字符。首先是我的代码:
library(RODBC)
con <- odbcConect('dsn', uid = 'user', pwd = 'pass')
query <- read_file('Query.sql')
query <- gsub('\n', ' ',gsub('\t', ' ',gsub('\r' ,' ', query)))
我在这里使用 gsub 手动删除我在我的 sql 文件中识别的三个隐藏字符。
df <- sqlQuery(con, query = query)
这将返回一个包含两个错误的列表。
[1] "HY000 911 [Oracle][ODBC][Ora]ORA-00911: invalid character\n"
和
[2] "[RODBC] ERROR: Could not SQLExecDirect...
最初,我将此查询从 Outlook 复制并粘贴到文本文件中。然后我重新输入了整个内容,希望能摆脱隐藏的字符。现在我正在使用一串 gsubs 手动删除隐藏字符,但我仍然收到错误消息。查看“查询”向量,我没有看到任何隐藏字符,所以我不确定问题出在哪里。
我读到 RODBC 可能难以在 SQL 查询中进行聚合,但此查询仅使用 LEFT JOIN、CASE 和 WHERE 来处理更高级别的关键字。
感谢任何帮助。
【问题讨论】:
-
您的
Query.sql文件是否包含任何“智能引号”(如“these”)或不间断空格? -
没有找到