无法连接到Sybase数据库,还需要其他参数吗?

时间:2017-10-25 10:10:32

标签: r odbc sybase r-dbi

我正在尝试使用DBIodbc软件包连接到Sybase数据库(ASE)。使用这些包连接失败。但是,当使用相同的dsn和RODBC包时,连接确实有效。使用DBIodbc导致失败的可能原因是什么?连接到Sybase服务器时,我应该提供其他参数吗? (见下文)

可重复的示例

# Attempt 1 using DBI and odbc fails
library(odbc)
library(DBI)

con <- dbConnect(
  odbc::odbc(),
  dsn  = myDsn,
  UID  = myLogin,
  PWD  = myPassword,
  Port = port
)

# Attempt 2 using RODBC succeeds
library(RODBC)

con2 <- odbcConnect(
  dsn = myDsn,
  uid = myLogin, 
  pwd = myPassword,
  believeNRows = FALSE
)

使用DBI / odbc时收到的错误

Error: nanodbc/nanodbc.cpp:950: 08S01: [DataDirect][ODBC OpenAccess SDK driver][OpenAccess SDK Client]TCP/IP error, connection timed out

我的问题

  • 在调用dbConnect连接到Sybase服务器时,是否应该提供其他参数?
  • 如果是,那是哪一个?
  • 如果没有,我还有什么不对的? (dsn使用RODBC包显示。)

我试图查找额外信息here,这似乎表明我可能需要额外的参数。但是我在这个领域的知识是有限的,所以我不确定如何使它适应当前的情况。

Sybase数据库版

Adaptive Server Enterprise 15.7

会话信息

R version 3.4.2 (2017-09-28)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1

Matrix products: default

locale:
[1] LC_COLLATE=Dutch_Belgium.1252  LC_CTYPE=Dutch_Belgium.1252    LC_MONETARY=Dutch_Belgium.1252 LC_NUMERIC=C                   LC_TIME=Dutch_Belgium.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  tools     methods   base     

other attached packages:
[1] RODBC_1.3-15 DBI_0.7      odbc_1.1.3  

loaded via a namespace (and not attached):
[1] bit_1.1-12     compiler_3.4.2 hms_0.3        tibble_1.3.4   Rcpp_0.12.13   bit64_0.9-7    blob_1.1.0     rlang_0.1.2   

0 个答案:

没有答案