| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Другие СУБД > целосность данных |
| Автор: OlegFPM 6.5.2004, 09:53 |
| народ подскажите где можно взять алгоритмы для проверки на целосность данных в paradox, так же алгоритмы восстановления данных |
| Автор: Akina 6.5.2004, 10:32 |
| Какая может быть целостность данных в Парадоксе? там один файл - одна таблица... связи - через уникальные индексные поля... максимум можно проверить корректность заголовка, соответствие типов данных в полях и еще кое-какие мелочи... Алгоритмы восстановления данных? каких? при каких типах разрушения? |
| Автор: Гость_OlegFPM 6.5.2004, 12:23 |
| Критическое завершение программы, когда таблица открыта для редактирования. Так же может быть случай когда таблица открыта, а данных не видно. Так же при поломке индексов, их аостановление. Я знаю есть библиотека Util32, которя восстанавливает данные, но какие там функции используются - не известно. Может ты знаешь |
| Автор: x77 8.5.2004, 22:21 |
| OlegFPM, самый простой алгоритм восстановления для парадокса - это востановление из резервной копии. периодически делаешь архивы, при открытии программы если таблица не открывается - предлагаешь открыть из архива, если из архива не открывается - из предыдущего и т.д. "парные" таблицы, например шапки накладных и сами накладные, восстанавливаешь также попарно. это гарантирует, что у самого тупого юзера прога как минимум - запуститься. если повезёт - то ещё и с какими-то данными. "критическое завершение, когда таблица открыта для редактирования" - говорит о безграмотной проге. открыл, считал данные, закрыл. вывел данные на экран, пусть редактирует хоть до посинения. юзер отредактировал, нажал ок. открываем таблицу, если нужно - проверяем новые данные на актуальность, пишем, закрываем. всё. ситуаций, когда таблица открыта на неопределённый срок (т.е. ожидает ввода пользователя) не должно быть в принципе. |
| Автор: OlegFPM 10.5.2004, 14:58 |
| "критическое завершение, когда таблица открыта для редактирования" это когда данные вводятся в таблицу и в этот момент происходит сбой в питании. |
| Автор: x77 10.5.2004, 15:11 |
| OlegFPM, так не надо их вводить в таблицу. выкини db-aware контролы и сделай всё по человески. Добавлено @ 15:12 имеется в виду, не надо их вводит в таблицу напрямую. пусть юзер куда-то их введёт, в обычные edit'ы, а после того, как он нажал ok, открой таблицу, запиши эти данные, и закрой. вероятность сбоя уменьшится на порядки. |
| Автор: OlegFPM 10.5.2004, 15:50 |
| имеется в виду, не надо их вводит в таблицу напрямую. пусть юзер куда-то их введёт, в обычные edit'ы, а после того, как он нажал ok, открой таблицу, запиши эти данные, и закрой. вероятность сбоя уменьшится на порядки - так и делаю, но вот кодгда происходит запись в таблицу, в этот момент и проподает питание. Вот так вот. Ладно твое мнение по поводу библиьтеки TUtil32.dll |
| Автор: x77 10.5.2004, 20:47 | ||
что, каждый раз? шаман, однако... я её не юзал |