1
我一直在使用RODBC和unixodbc將RODBC連接到OSX Yosemite上的SQL Server 2012幾個小時。我收到R中的錯誤是很普通:我的RODBC配置有什麼問題?
> odbcDriverConnect("DSN=ISTSQL;UID=sa;PWD=***")
[1] -1
Warning messages:
1: In odbcDriverConnect("DSN=ISTSQL;UID=sa;PWD=***") : [RODBC] ERROR: state ±6S, code 20013, message
2: In odbcDriverConnect("DSN=ISTSQL;UID=sa;PWD=***") : [RODBC] ERROR: state ±6S, code 0, message
3: In odbcDriverConnect("DSN=ISTSQL;UID=sa;PWD=***") :
ODBC connection failed
Warning messages:
1: In strsplit(msgs[i], "\n") : input string 1 is invalid in this locale
2: In strsplit(msgs[i], "\n") : input string 1 is invalid in this locale
我/etc/freetds.conf
文件包括以下內容:
[ISTSQL]
host = ip.address
port = 1433
tds version = 8.0
我/etc/odbcinst.ini
文件如下:
[MSSQL]
Description = Microsoft SQL Server driver
Driver = /usr/local/Cellar/freetds/0.95.8/lib/libtdsodbc.so
UsageCount = 1
而且我/etc/odbc.ini
文件如下:
[ISTSQL]
Driver = MSSQL
Servername = ISTSQL
Port = 1433
Database = TMS
TDS_Version = 8.0
我可以通過命令行tsql
命令和isql
命令連接到數據庫。有沒有人有任何想法我可能會解決這個問題或找到更詳細的錯誤日誌?
謝謝尼爾。我已相應調整了警告長度。不幸的是,錯誤仍然是一樣的。但這確實有助於瞭解。 – user3079064
如果它仍然像這樣被切斷並且沒有顯示實際的錯誤信息,那看起來像是一個錯誤;你可能想通過電子郵件向維護者發送這個消息。 –
啊,謝謝你的跟進。事實證明,我以錯誤的方式設置了'warning.length'。我成功改變了長度,如下所示:'options(warning.length = 5000)'。我用'getOption(「warning.length」) [1] 5000'證實了這一點。我會用新的細節更新這個問題。再次感謝。 – user3079064