0

我正在使用 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-bit) 运行于:Windows >= 8 x64 (build 9200)

矩阵产品:默认

语言环境:[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] 并行统计图形 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

4

1 回答 1

2

终于奏效了!显然我找不到任何方法来强制在我的代码中进行编码。但是,我将环境变量“NLS_LANG”和相应的语言代码添加到我的操作系统中,从而解决了这个问题

于 2017-10-19T07:58:27.617 回答