很抱歉,如果我问一个已经问过的问题,我在这个论坛中有效地发现了一些类似的问题(例如Special characters and RODBC),但没有答案可以帮助我......
所以,我的问题是,当我通过R中的RODBOC对Oracle数据库进行查询时,我无法正确查看返回的特殊字符。 R自动将(特殊情况下)特殊字符转换为普通字符
这是我做的一个简单测试:
> Cnx <- odbcConnect(dsn="myDSN", uid="myLogin",pwd="myPassword")
> sqlQuery(Cnx, paste("SELECT 'eéèêëÄÊÍÕØ' col FROM DUAL"))
COL
1 eeeeeAEI??
我在Win7 x64下,&#34; myDSN&#34;是一个ODBC连接,它使用OraClient12home1中的&#34; Oracle&#34; (64位)。我用&#34; R x64 3.2.0&#34;与RODBC包版本1.3-11。 数据库在linux服务器上,是NLS_CHARACTERSET是&#34; WE8MSWIN1252&#34;
我做了其他测试以便更好地理解:
我尝试使用&#34; UTF-8&#34;来使用DBMSencoding参数。我得到了同样的问题,与其他人一样,我得到了不同的错误......
这是我的sessionInfo()
R version 3.2.0 (2015-04-16)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale:
[1] LC_COLLATE=French_France.1252 LC_CTYPE=French_France.1252 LC_MONETARY=French_France.1252
[4] LC_NUMERIC=C LC_TIME=French_France.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] RODBC_1.3-11
loaded via a namespace (and not attached):
[1] tools_3.2.0
感谢您的帮助