Конференция "Базы" » Таблицы Paradox
 
  • Liones © (07.11.08 08:11) [0]
    Я заметила такую вещь, что иногда у таблиц Paradox слетают файлы, хранящие описание таблицы (*.val). Можно ли ее восстановить программно? Подскажите пожалуйста, как это сделать
  • Anatoly Podgoretsky © (07.11.08 09:05) [1]
    > Liones  (07.11.2008 8:11:00)  [0]

    Вряд ли
  • Anatoly Podgoretsky © (07.11.08 09:06) [2]
    Только вроде в этих файлах хранится не описание таблиц, а ограничения.
  • Liones © (07.11.08 09:28) [3]
    Ну может я не правильно выразилась, но суть не в этом. Как же все-таки быть с этими файлами?
  • Правильный$Вася (07.11.08 10:34) [4]

    >  Как же все-таки быть

    забыть про парадокс, особенно в многопользовательском окружении
  • Anatoly Podgoretsky © (07.11.08 10:50) [5]
    > Liones  (07.11.2008 9:28:03)  [3]

    C помощью Database Desktop воссоздать ограничения, файл создатся автоматически.
  • Liones © (07.11.08 11:45) [6]

    > Anatoly Podgoretsky ©   (07.11.08 10:50) [5]
    > [3]C помощью Database Desktop
    > воссоздать ограничения, файл создатся автоматически


    хочется то чтобы это можно было сделать программно, чтобы пользователь мог не вникая в суть проблемы восстановить таблицы
  • Liones © (07.11.08 11:46) [7]

    > Правильный$Вася   (07.11.08 10:34) [4]
    > забыть про парадокс, особенно в многопользовательском
    > окружении

    приложение на одного пользователя
  • Сергей М. © (07.11.08 11:48) [8]

    > чтобы пользователь мог не вникая в суть проблемы восстановить
    > таблицы


    .. и при этом нафигачить кучу других, зачастую более серьезных проблем.
  • Liones © (07.11.08 11:49) [9]

    > Правильный$Вася   (07.11.08 10:34) [4]
    > забыть про парадокс,


    а что тогда? dbf - удаление записей не устраивает, записи же только помечаются на удаление. foxpro - у них заголовки таблиц слетают. с остальными как-то пока не знакома
  • Liones © (07.11.08 11:49) [10]

    > Правильный$Вася   (07.11.08 10:34) [4]
    > забыть про парадокс,


    а что тогда? dbf - удаление записей не устраивает, записи же только помечаются на удаление. foxpro - у них заголовки таблиц слетают. с остальными как-то пока не знакома
  • Liones © (07.11.08 11:51) [11]

    > Сергей М. ©   (07.11.08 11:48) [8]
    > и при этом нафигачить кучу других, зачастую
    > более серьезных проблем.

    да зачем? можно же просто например добавить пункт меню типа "восстановление базы", пользователь не будет видеть вобще какие действия выполняет программа
  • Сергей М. © (07.11.08 11:56) [12]

    > Liones ©   (07.11.08 11:51) [11]


    Угу.
    А другой пользователь в это же время, ничего не зная об этом, начнет другую пользовательскую операцию над базой.
    В лучшем случае неразрешимые коллизии при этом приведут к нарушению ссылочной целостности, в худшем вы там со своими пользователями ухайдокаете свою базу так что она будет вообще не восстановима.
  • MsGuns © (07.11.08 12:01) [13]
    Восстановление базы пользователем вообще штука опасная, но если и должна применяться, то только в единственном случае - если она (база) используется строго монопольно и лежит на ПК пользователя

    Для того, чтобы база нормально восстанавливалась после слетов программно надо писать соответствующую программу (т.е. не в предметном проекте, а в отдельном) и иметь образец БД с пустым содержимым (в смысле в таблицах нет записей) но полностью с ограничениями, индексами и т.д. Восстановление выполняется так: сначала база должны быть быгружена в архив (предварительно), причем в архив помещаются только данные безо всяких индексов, ограничений и т.д. При восстановлении БД "образца" копируется в целевой каталог и затем в эту пустую, но полнофункциональную в смысле "бизнес-логики" (если этот термин можно применить к локальной БД) "заливаются" записи из таблиц архива.
  • Liones © (07.11.08 12:04) [14]

    > Сергей М. ©   (07.11.08 11:56) [12]

    база используется одним пользователем
  • MsGuns © (07.11.08 12:04) [15]
    Если проект новый, то рекомендую воспользоваться советами и отказаться от парадокса в пользу клиент-серверных систем. Время на освоение новых для Вас технологих сторицей окупится при эксплуатации проекта заказчиком.
  • Liones © (07.11.08 12:07) [16]

    > MsGuns ©   (07.11.08 12:01) [13]

    В общем логику процесса я поняла. Так то в программе предусмотрено резервное архивирование базы, которое выполняется при выходе из программы. При выходе вся папка с базой архивируется раром и переносится в отдельную папку.
  • Liones © (07.11.08 12:10) [17]

    > MsGuns ©   (07.11.08 12:04) [15]
    > Если проект новый, то рекомендую воспользоваться советами
    > и отказаться от парадокса в пользу клиент-серверных систем.
    >  Время на освоение новых для Вас технологих сторицей окупится
    > при эксплуатации проекта заказчиком.

    Согласна, но проблема в нехватке времени. Да я и пыталась найти хоть какой-нибудь материал для обучения, всего много и разрозненно. Может посоветуете что-нибудь стоящее
  • GRAND © (07.11.08 12:14) [18]

    > а что тогда? dbf - удаление записей не устраивает, записи
    > же только помечаются на удаление.


    dbf-ник можно pack-овать, и тогда все помеченные на удаление записи удалятся физически. Но правильно говорят те, кто советует перейти на клиент-серверную платформу - это самый мудрый выход из ситуации. От себя же добавлю, что лучше Interbase/Firebird здеь не найти. Особенно в Вашем случае.
  • Сергей М. © (07.11.08 12:20) [19]

    > Liones ©   (07.11.08 12:04) [14]


    Тогда, при условии что база локальная, падение валидационных файлов - довольно странное явление..
 
Конференция "Базы" » Таблицы Paradox
Есть новые Нет новых   [134477   +39][b:0][p:0.001]