Я работал в течение нескольких часов при подключении RODBC к SQL Server 2012 на OSX Yosemite с использованием RODBC и unixodbc. Ошибка я получаю в 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