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

Вниз

Таблицы 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.034 c
15-1245338304
Tirael
2009-06-18 19:18
2009.08.23
скорость игрушки


2-1246014882
berezne
2009-06-26 15:14
2009.08.23
Компиляция exe файла


15-1245517111
Инкогнито
2009-06-20 20:58
2009.08.23
Возможность получить подсказку


2-1246011562
AndrewG
2009-06-26 14:19
2009.08.23
Получить номер элемента в массиве


15-1245614869
Ebulfez
2009-06-22 00:07
2009.08.23
Kak shifrovat moy proqram





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский