powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / VFPOLEDB, точка облома SELECT'а
4 сообщений из 4, страница 1 из 1
VFPOLEDB, точка облома SELECT'а
    #38718071
dayone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Периодически подкачиваю dbf'ку на MSSQL 2012 c помощью VFPOLEDB. Создан linked server по имени FOXDBF, отдается команда INSERT, которая сводится к
Код: sql
1.
select * from openquery(FOXDBF,'select * from mytable.dbf')


Однако в dbf-ке могут возникать ошибки, и select не дорабатывает до конца, при этом транзакция откатывается, а я получаю сообщение вроде
Код: sql
1.
2.
3.
Поставщик OLE DB "VFPOLEDB" для связанного сервера "FOXDBF" вернул сообщение "Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена.".
Сообщение 7341, уровень 16, состояние 2, строка 1
Не удалось получить значение текущей строки столбца "[VFPOLEDB].region" от поставщика OLE DB "VFPOLEDB" для связанного сервера "FOXDBF". Поставщик не может определить значение для данного столбца.


Это бывает, например, когда в поле region (N 2) вставляют значение 160, и в поле вместо числа оказывается "переполнение", и т.п.

Вопрос следующий - как понять, в какой строке таблицы на 500.000 строк сбился select, чтобы хотя бы продиагностировать ошибку? Есть ли возможность опросить какие-то функции/переменные провайдера ?
Пока что просто переспрашиваю select в окне SSMS, и смотрю, за какой последней "хорошей" строкой умер запрос, но это хатратно и неудобно.
...
Рейтинг: 0 / 0
VFPOLEDB, точка облома SELECT'а
    #38718419
Fffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Предусмотрите это сразу же в запросе.
...
Рейтинг: 0 / 0
VFPOLEDB, точка облома SELECT'а
    #38718546
Pulsar_p
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dayone,
Я периодически сталкиваюсь с точно такой же проблемой. Выкручиваюсь следующим образом: перед тем как залить таблицу на сервер, избавляюсь от этих долбаных звездочек(переполнений) в числовых полях, в вашем случае так:

Код: sql
1.
UPDATE mytable SET region=0  WHERE region>99
...
Рейтинг: 0 / 0
VFPOLEDB, точка облома SELECT'а
    #38718560
Ffffffffffffffff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это все можно в запросе, который потянет данные на сервер, сделать. Заодно исправить плохие даты.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / VFPOLEDB, точка облома SELECT'а
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]