ROracle编码问题

时间:2017-10-18 09:33:24

标签: roracle

我正在使用ROracle库从RStudio访问Oracle数据库。请参阅以下代码:

drv = dbDriver("Oracle")
connect.string = paste(
  "(DESCRIPTION=",
  "(ADDRESS=(PROTOCOL=tcp)(HOST=", host, ")(PORT=", port, "))",
  "(CONNECT_DATA=(SID=", sid, ")))", sep = "")

con = dbConnect(drv, username = "",
                 password = "",dbname=connect.string, encoding="latin1")

### Pull tables
keyword = dbGetQuery(con, "select COLUMN1,COLUMN2 from TABLE1")

在我的专栏中,我得到了一些词:Lørdag,søndag等,它们被归还为:L?rdag,S?ndag。

R会话信息:

R版本3.4.2(2017-09-28) 平台:x86_64-w64-mingw32 / x64(64位) 运行于:Windows> = 8 x64(build 9200)

Matrix产品:默认

区域设置: [1] LC_COLLATE = English_United States.1252 LC_CTYPE = English_United States.1252 LC_MONETARY = English_United States.1252 [4] LC_NUMERIC = C LC_TIME = English_United States.1252

附加基础包: [1] parallel stats graphics grDevices utils数据集方法库

其他附件包: [1] stringi_1.1.5 doParallel_1.0.11 iterators_1.0.8 ROracle_1.3-1 DBI_0.7 foreach_1.4.3

通过命名空间加载(而不是附加): [1] compiler_3.4.2 tools_3.4.2 codetools_0.2-15

1 个答案:

答案 0 :(得分:1)

终于有效了!显然我无法找到任何方法在我的代码中强制编码。但是,我将环境变量“NLS_LANG”和相应的语言代码添加到我的操作系统中,修复了问题