powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Ошибка экспорта таблицы
8 сообщений из 8, страница 1 из 1
Ошибка экспорта таблицы
    #35462709
anarkiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть таблица SQLUser.DocData содержит в себе порядка миллиона строк. При попытке экспорта таблицы с помощью стандартного мастера экспорта CACHE' SQL MAnager в txt с разделителями, заголовками доходит где то до середины таблицы (по progressbar) и выкидывает ошибку "ОШИБКА #5001: Ошибка экспорта строк: -400: <VALUE OUT OF RANGE>LOOPZ+4^SQLExport32". все остальные таблицы (гораздо меньшего размера) экспортируются на ура. В чем может быть причина сего явления?

p.s. при подключении к БД внешними клиентами:
DataBase Tour Pro отказывается открывать ЭТУ таблицу с ошибкой "Open table error: Поставщик данных или другая служба вернули состояние E_FAIL"
Проверка на целостность БД USER вцелом и конкретно этой таблицы (User.DocDataD и User.DocDatal) проходит без ошибок
версия CACHE 5.0.2.607.1
SQL Manager build 1706
...
Рейтинг: 0 / 0
Ошибка экспорта таблицы
    #35463145
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добился такой же ошибки при экспорте.

Это из-за неверных данных:
1. <VALUE OUT OF RANGE>
2. <VALUE OUT OF RANGE>
...
Рейтинг: 0 / 0
Ошибка экспорта таблицы
    #35463620
anarkiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И что с этим делать теперь? я так понимаю нужно найти строку с неверными данными и исправить их на верные.. Как это сделать? Прошу сильно не пинать, с SQL знаком 2 дня :)
...
Рейтинг: 0 / 0
Ошибка экспорта таблицы
    #35464101
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<VALUE OUT OF RANGE>LOOPZ+4^SQLExport32
32 говорит о том, что 32 раза пытались экспортировать данные. В студии можете открыть, например, программу SQLExport1.mac и посмотреть, как она работает.

Ошибка скорее всего в датах. Попробуйте исключить из экспорта все даты, чтобы в этом удостовериться.
Если это так, то можно запустить в терминале следующую программу:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
new SQLCODE,mgr
&SQL(declare z cursor for select %id, date1, date2 INTO mgr( 1 ), mgr( 2 ), mgr( 3 ) from SQLUser.DocData for read only)
&SQL(open z)
for  {
  &SQL(fetch z)
  q:SQLCODE
  w !
  zw mgr
  w "id=",mgr( 1 ),? 7 ,"mgr(2)=",$zdt(mgr( 2 ), 3 ),? 15 ,"mgr(3)=",$zdt(mgr( 3 ), 3 ),!
}	
&SQL(close z)
q
Ну, а зная конкретные id и поле, Вы сможете исправить значение.

PS: а зачем Вам понадобилось экспортировать данные через SQL Mаnager?
...
Рейтинг: 0 / 0
Ошибка экспорта таблицы
    #35465207
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть ещё пример-утилита для нахождения ошибок в Extent (Validate Extent):
Caché and Ensemble Code Samples

Не забудьте для дат установить параметры (MINVAL = 0, MAXVAL = 2980013)

To ALL
Там есть и пример использования Row Level Security, в дополнение к недавно опубликованному на блоге примеру Вадима Фёдорова.
...
Рейтинг: 0 / 0
Ошибка экспорта таблицы
    #35465244
zen space
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вообще в каши в частности в zen невозможно работать с датами, постоянно надо то из дисплэй в лоджикал то из лоджикал в дисплэй ерунда какая то...
...
Рейтинг: 0 / 0
Ошибка экспорта таблицы
    #35465478
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Логическое представление даты хранится в Caché в $h формате. Но конечному пользователю непонятно, что означает, например, дата 47976 , а вот "09 Май 1972" ему о чём-то говорит.
Кроме того, число 47976 в разных языках и системах может интерпретироваться по-разному. Да и самих форматов представления дат много (Caché поддерживает 15 форматов).

Что касается постоянного преобразования. Я Вам больше скажу: все данные, поступающие от пользователя необходимо ещё и проверять на корректность (и не только даты). Ибо от пользователя может придти всё, что угодно и необязательно то, что Вы ожидаете.
...
Рейтинг: 0 / 0
Ошибка экспорта таблицы
    #35470560
anarkiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор можно запустить в терминале следующую программу:

в терминале программу запустить не получилось, ругался на синтаксис, запустил в Studio (правда, вызвал тот же терминал), ну не суть важно. программа перебирает ВСЕ записи, с выводом на экран.. Если записей не сильно много, то можно посмотреть,но когда их мильон.. =) сейчас буду пробовать выводить по сотне примерно с того места где экспорт обрывается (через Where (ID>n) and (ID<m) )
Существует какая либо проверка на значение записи? Типа вывод на экран записей, чей формат отличается от Date.

автор PS: а зачем Вам понадобилось экспортировать данные через SQL Mаnager?
необходимо выгрузить данные (справочников, документов) во внешнюю аналитику. выгружать встроенными ср-вами довольно утомительно, легче показалось выгрузить целиком таблицу.

автор Есть ещё пример-утилита для нахождения ошибок в Extent (Validate Extent):
Стыдно, но понял ровным счетом ничего =) пока не тот уровень понимания языка..
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Ошибка экспорта таблицы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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