Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2011.10.30;
Скачать: [xml.tar.bz2];

Вниз

настройки bde для dbase level 7   Найти похожие ветки 

 
grammar-nazi   (2010-02-03 15:09) [0]

доброго времени суток.

есть .dbf-таблица (27 полей, размер записи - 301 байт) с несколькими индексами (4 expression-индекса и 1 простой) в .mdx-файле. таблица содержит чуть меньше 330 тыс. записей.

проблема такова: в таблицу нужно добавить записи за текущий период. таких записей около 1100 штук. добавляется лишь 328, после чего получаю исключение EDBEngineError "Read failure" (клиент, обнаруживший данную проблему, получал на этом месте исключение EAccessViolation в IDAPI32.DLL). после исключения .dbf-файл остаётся в самом неприглядном виде - последняя запись дописана не до конца (не дописано порядка 50 байтов), средствами BDE получить доступ к последним нескольким записям невозможно, их какбы нет.

примерно тоже самое происходит при импортировании данных в пустую таблицу идентичной структуры - т.е. невозможно даже записать данные, находящиеся в таблице, в другую такую же таблицу.

при удалении всех индексов, добавление проходит на ура. при удалении большей части старых записей из таблицы - тоже. к сожалению, это не решение проблемы.

пробовал увеличивать MDX BLOCK SIZE - не помогает. нужны идеи, заранее спасибо.


 
Anatoly Podgoretsky ©   (2010-02-03 15:20) [1]

Ну так определи какой именно индекс вызывает проблемы.


 
grammar-nazi   (2010-02-03 18:34) [2]

когда определил индекс, всё оказалось до банального просто.
виноватым был единственный простой индекс (по одному полю). внимательнее посмотрел на данные; заметил, что 65% значений этого поля одинаковы. добавил в индекс ещё одно поле - всё отлично.
спасибо!



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2011.10.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.004 c
2-1310449758
bestolkov
2011-07-12 09:49
2011.10.30
Запись в файл данных динамического массива


15-1309764636
Andy BitOff
2011-07-04 11:30
2011.10.30
Кто как решает задачу...


15-1309761912
Дмитрий С
2011-07-04 10:45
2011.10.30
В чем разница


15-1310070597
Юрий
2011-07-08 00:29
2011.10.30
С днем рождения ! 8 июля 2011 пятница


15-1309765210
PiterK
2011-07-04 11:40
2011.10.30
Обводка изображения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский