2016-04-28 3 views
0

мы попали в ошибку с помощью команды RODBC и SqlSave. Мы немного смущены тем, что нужно делать, поскольку одна и та же команда SqlSave работает, когда данные, которые мы пытаемся сохранить в базе данных Sybase, являются небольшими (~ менее 10.000 строк). При попытке сохранить более крупные данные (~ 200 000 строк) процесс сохранения запускается без каких-либо проблем, но он падает после сохранения нескольких тысяч строк. Затем мы попали на это сообщение об ошибке «не удалось добавить в таблицу ..»Ошибка RODBC: SqlSave не может быть добавлен в таблицу

Мы используем этот вид кода:

library(RODBC) 

channel <- odbcConnect("linfo-test", uid="DBA", pwd="xxxxxx", believeNRows=FALSE) 

sqlSave(channel=channel, dat=matkat, tablename = "testitaulu", append = TRUE) 

odbcClose(channel) 

Если кто-то имеет какие-либо идеи, почему это происходит только с большими данными и как мы могли бы Исправьте это, мы будем очень благодарны. Нам самих не хватает идей.

ответ

1

sqlSave с append=TRUE почти никогда не работает. Вам придется явно написать инструкцию SQL INSERT INTO, что является неудачным. Извините за плохие новости.

+0

Это действительно плохая новость, но спасибо за нарушение! Я просто потратил 30 минут, не получив 'sqlSave' с' append = TRUE', чтобы работать даже в самых тривиальных случаях, хорошо знать, что это не только я. –