Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.08.23;
Скачать: CL | DM;

Вниз

Таблицы Paradox   Найти похожие ветки 

 
Liones ©   (2008-11-07 08:11) [0]

Я заметила такую вещь, что иногда у таблиц Paradox слетают файлы, хранящие описание таблицы (*.val). Можно ли ее восстановить программно? Подскажите пожалуйста, как это сделать


 
Anatoly Podgoretsky ©   (2008-11-07 09:05) [1]

> Liones  (07.11.2008 8:11:00)  [0]

Вряд ли


 
Anatoly Podgoretsky ©   (2008-11-07 09:06) [2]

Только вроде в этих файлах хранится не описание таблиц, а ограничения.


 
Liones ©   (2008-11-07 09:28) [3]

Ну может я не правильно выразилась, но суть не в этом. Как же все-таки быть с этими файлами?


 
Правильный$Вася   (2008-11-07 10:34) [4]


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

забыть про парадокс, особенно в многопользовательском окружении


 
Anatoly Podgoretsky ©   (2008-11-07 10:50) [5]

> Liones  (07.11.2008 9:28:03)  [3]

C помощью Database Desktop воссоздать ограничения, файл создатся автоматически.


 
Liones ©   (2008-11-07 11:45) [6]


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


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


 
Liones ©   (2008-11-07 11:46) [7]


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

приложение на одного пользователя


 
Сергей М. ©   (2008-11-07 11:48) [8]


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


.. и при этом нафигачить кучу других, зачастую более серьезных проблем.


 
Liones ©   (2008-11-07 11:49) [9]


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


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


 
Liones ©   (2008-11-07 11:49) [10]


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


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


 
Liones ©   (2008-11-07 11:51) [11]


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

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


 
Сергей М. ©   (2008-11-07 11:56) [12]


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


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


 
MsGuns ©   (2008-11-07 12:01) [13]

Восстановление базы пользователем вообще штука опасная, но если и должна применяться, то только в единственном случае - если она (база) используется строго монопольно и лежит на ПК пользователя

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


 
Liones ©   (2008-11-07 12:04) [14]


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

база используется одним пользователем


 
MsGuns ©   (2008-11-07 12:04) [15]

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


 
Liones ©   (2008-11-07 12:07) [16]


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

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


 
Liones ©   (2008-11-07 12:10) [17]


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

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


 
GRAND ©   (2008-11-07 12:14) [18]


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


dbf-ник можно pack-овать, и тогда все помеченные на удаление записи удалятся физически. Но правильно говорят те, кто советует перейти на клиент-серверную платформу - это самый мудрый выход из ситуации. От себя же добавлю, что лучше Interbase/Firebird здеь не найти. Особенно в Вашем случае.


 
Сергей М. ©   (2008-11-07 12:20) [19]


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


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


 
Liones ©   (2008-11-07 12:22) [20]


> Сергей М. ©   (07.11.08 12:20) [19]
> Тогда, при условии что
> база локальная, падение валидационных файлов - довольно
> странное явление..

Но мне это не приснилось точно)))))


 
Liones ©   (2008-11-07 12:24) [21]


> GRAND ©   (07.11.08 12:14) [18]
> ...лучше Interbase/Firebird здеь не
> найти. Особенно в Вашем случае.

Подскажите пожалуйста, где найти информацию, чтобы хоть знать что это


 
MsGuns ©   (2008-11-07 12:29) [22]

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

Хорошей литературы для БЫСТРОГО И ЭФФЕКТИВНОГО обучения КС технологиям с нуля не знаю. Сам осваивал на акцесе - доступно, достаточно быстро, удобно. В качестве примеров брал примеры, прилагаемые в самой делфе. По сиквелю советую начать с азов, неплохо изложенных в той же делфишеой справке в разделе Local SQL, а дальше - зависит от скл-сервера. Для мсскл советую справку jet40.chm

Сложнее с пониманием самого принципа взаимодействия между "клиентом" и "сервером", сутью и назначением транзакций, пониманием "внутренностей" скл-сервера. Мне в свое время очень понравилась книжка "Мир Интербэйз" Ковязина и Вострикова. Несмотря что это интербэйз, суть механизма транзакций и многое другое внятно, кратко и полно описанный ими, ИМХО, вполне дает понятия о предмете и для других серверов.


 
MsGuns ©   (2008-11-07 12:36) [23]

У файрберда есть одно несомненное преимущество - он бесплатен. Но есть и недостатки, которые могут со временем стать серьезным препятствием при масштабировании или даже развитии проекта. Хотя тут, конечно, найдется немало его приверженцев.
А вот в части средств доступа именно из делфи, библиотеке компонент, равной ADO по доступности, удобству и прозрачности я не знаю.


 
Liones ©   (2008-11-07 12:39) [24]


> MsGuns ©   (07.11.08 12:29) [22]
> Сложнее с пониманием самого принципа взаимодействия между
> "клиентом" и "сервером", сутью и назначением транзакций,
>

Что такое двухзвенка и трехзвенка, например, я знаю.


 
MsGuns ©   (2008-11-07 12:52) [25]

Парадокс, кстати, совсем не такая уж "падучая" СУБД, если использовать некоторые приемы. Например, вероятность фатального подения индексов в многопользовательской среде резко снижается, если не использовать в приложениях прямых связок мастер-детал. Вместо них можно юзать специальные "трансферные" таблицы-мастера, к которым линковать основную и детальную таблицу. Мастер-таблицы предварительно копируются из рабочего каталога в приват и там уже открываются и связываются. Кроме того следует избегать "гридного" редактирования, а также правок "бизнес-логики" (то, что находится в *.val например) "на лету". Существует огромное количество вполне работающих систем на парадоксе, которые используются годами практически без вмешательства проектировщика с числом одновременных пользователей, исчисляемым десятками.


 
MsGuns ©   (2008-11-07 12:56) [26]

>Liones ©   (07.11.08 12:39) [24]
>Что такое двухзвенка и трехзвенка, например, я знаю.

Значит Вам будет уже легче :)
Трехзвенка - это, ИМХО, слишком и если нет необходимости в реально "тонком" или удаленном клиенте, я бы ее не использовал, т.к. она серьезно сложнее в проектировании, чем "простой" клиент-сервер.


 
GRAND ©   (2008-11-07 13:05) [27]


> Подскажите пожалуйста, где найти информацию, чтобы хоть
> знать что это


http://ibase.ru


> MsGuns ©   (07.11.08 12:29) [22]


> Для мсскл советую справку jet40.chm


Фтопку, адназначна! Речь ведь идет о локальной однопользовательской задаче. IB/FB здесь будет идеален тем, что он на локале работает со свистом, требует минимум усилий по установке/обслуживанию, мало весит, прекрасно переносим и вообще приятен во всех отношениях. Ну а мелкософтовский недоскл недосервер не только в данном случае, но и просто по жизни в топку ;)


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


Жжжжють! И это, кстати, еще один весомый аргумент в пользу IB/FB, который отучает программиста от уймы бесполезной работы.


 
Виталий Панасенко   (2008-11-07 14:32) [28]

Или MS Access+ADO для доступа.для локальной работы хватит с головой..Хотя.. FB "роднее".. и действительно нааааааааааамного удобней и проще в обслуживании, чем Парадокс...


 
GRAND ©   (2008-11-07 14:34) [29]

...и чем MS Access+ADO ;)


 
MsGuns ©   (2008-11-07 14:41) [30]

>GRAND ©  

Очевидно, дело в том, что ты работал в основном с птицей и рабоал мало или не работал вообще  с мсскл.
О  футболе ты много квалифицированнее рассуждаешь, ей богу :)


 
GRAND ©   (2008-11-07 14:55) [31]


> Очевидно, дело в том, что ты работал в основном с птицей
> и рабоал мало или не работал вообще  с мсскл.


Да нет, Ганзик, моя квалификация во многом опирается на личный опыт не только в футболе. Дело в том, что когда-то давно я тоже начинал в клиент-серверных технологиях и стоял перед выбором платформы. Пробовал-с я этот ваш MS SQL через ADO - глюкодром ужасный! Программа могла срабатывать совершенно по-разному в одних и тех же фрагментах кода без каких-либо изменений. Только пересев на IB, я почувствовал себя полностью самодостаточным программистом (даже на кривом IBX!) - поведение программы было целиком предсказуемым, поставленные задачи решались на порядок быстрее и вообще, для решения оных я не нуждаюсь больше ни в чем, абсолютно!


> О  футболе ты много квалифицированнее рассуждаешь, ей богу
> :)


Ну а так, чтоб не по личностям, а по сути - аргументы в пользу MS SQL против птицы применительно к обсуждаемому случаю есть?


 
MsGuns ©   (2008-11-07 15:21) [32]

Я уже неоднократно писал о преимуществах мсскл - если интересно, то найди и почитай


 
GRAND ©   (2008-11-07 15:32) [33]


> Я уже неоднократно писал о преимуществах мсскл - если интересно,
>  то найди и почитай


Для локальной задачи?!!!


 
Anatoly Podgoretsky ©   (2008-11-07 16:38) [34]

> Сергей М.  (07.11.2008 12:20:19)  [19]

Вообще то оно даже маловероятное, в эти файлы ничего не пишется.


 
Anatoly Podgoretsky ©   (2008-11-07 16:39) [35]

> Liones  (07.11.2008 11:45:06)  [6]

Элементарно, данный файл восстанавлисается путем простого копирования эталога из архива.


 
Anatoly Podgoretsky ©   (2008-11-07 16:41) [36]

> Liones  (07.11.2008 11:49:09)  [9]

Если не учитывать переход на КС, то это уникальная особенность, почти недоступная для других СУБД.
Про упаковку тебе уже сказали. Мне например трудно найти какие либо достоинства у Парадокса.


 
Anatoly Podgoretsky ©   (2008-11-07 16:43) [37]

> Liones  (07.11.2008 12:24:21)  [21]

Рекомендую задуматься над использованием MS SQL 2005 Express гораздо проще в эксплуатации и мощнее. Информации неимоверно много. Хотя Firebird тоже удачный выбор.


 
Anatoly Podgoretsky ©   (2008-11-07 16:45) [38]

> MsGuns  (07.11.2008 12:52:25)  [25]

Лучше вообще ни использовать никакие индексы, кроме ПК и работать только с помощью запросов, да еще и без dbAware компонент для редактирования.


 
Anatoly Podgoretsky ©   (2008-11-07 16:47) [39]

> GRAND  (07.11.2008 14:55:31)  [31]

> Пробовал-с я этот ваш MS SQL через ADO - глюкодром ужасный! Программа могла срабатывать совершенно по-разному в одних и тех же фрагментах кода без каких-либо изменений.

Как ты этого сумел добиться?

Чепуха этот ваш Карузо.


 
Anatoly Podgoretsky ©   (2008-11-07 16:48) [40]

> GRAND  (07.11.2008 15:32:33)  [33]

У меня с 10 серверов крутится для локальных задач и как то не беспокоит, работают в необслуживаемом режиме, к некоторым и не подключиться.



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

Текущий архив: 2009.08.23;
Скачать: CL | DM;

Наверх




Память: 0.58 MB
Время: 0.01 c
2-1245784213
Mishechka
2009-06-23 23:10
2009.08.23
Работа с ini-файлом..?


2-1245751544
vvrz
2009-06-23 14:05
2009.08.23
Как сохранить строку с двойным апострофом


15-1245521182
Kerk
2009-06-20 22:06
2009.08.23
География


2-1245733905
Tornado
2009-06-23 09:11
2009.08.23
Копирование файлов


2-1245681294
marantz85
2009-06-22 18:34
2009.08.23
Как переписать данные из динамического массива в memorystream?