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

Вниз

Операции с таблицами БД   Найти похожие ветки 

 
Татьяна   (2008-09-03 07:31) [0]

Подскажите пожалуйста, каким образом можно закрыть файл таблицы БД чтобы можно было запустить архивацию файла. Методы CLOSE и ACTIVE компонента Table не срабатывают.


 
evvcom ©   (2008-09-03 08:26) [1]

а что такое "запуск архивации файла"?
Напрягаю телепатор после отпуска. Это архивирование WinRar-ом, WinZip-ом или им подобными? Ну так они что-нибудь пишут о причинах?

> Методы CLOSE и ACTIVE компонента Table не срабатывают.

Active - не метод, а свойство. Close - да, метод. Но он срабатывает. То, что ему положено делать, он делает. Почему же не срабатывает?


 
Татьяна ©   (2008-09-03 08:56) [2]

Да, архивировать хочу WinRARом. А причину пишет, что файл занят другим приложением.


 
Anatoly Podgoretsky ©   (2008-09-03 09:12) [3]

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


 
Татьяна ©   (2008-09-03 09:27) [4]

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


 
Anatoly Podgoretsky ©   (2008-09-03 09:46) [5]

> Татьяна  (03.09.2008 9:27:04)  [4]

Не просто копии, с помощью процедур ОС, а копии с помощью движка, для БДЕ это dbiCopyTable - копирует все семейство, требует блокировки на чтение. Подробности в справке по БДЕ, там же пример.


 
Anatoly Podgoretsky ©   (2008-09-03 09:49) [6]

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


 
Сергей М. ©   (2008-09-03 10:05) [7]


> Методы CLOSE и ACTIVE компонента Table не срабатывают


Установи св-ва Session.Active и Database.Connected в False  и би хэппи)


 
Anatoly Podgoretsky ©   (2008-09-03 10:20) [8]

> Сергей М.  (03.09.2008 10:05:07)  [7]

Для БДЕ не обязательно, некоторые блокировки снимаются только после закрытия приложения, особенно если оно не настроено и приложение написано без учета этого.


 
oldman ©   (2008-09-03 10:22) [9]


> Anatoly Podgoretsky ©   (03.09.08 09:49) [6]
> и все равно, копировать в другую папку, и только потом ее
> архивировать.


Поддерживаю безоговорочно


 
brother ©   (2008-09-03 10:23) [10]

работающую базу не архивируют! только ее копию) +1 к [6]


 
Татьяна ©   (2008-09-03 10:46) [11]

Всем спасибо за помощь. Я все поняла


 
quart   (2008-09-03 10:52) [12]

close;
flushbuffers?


 
brother ©   (2008-09-03 10:58) [13]

> Всем спасибо за помощь. Я все поняла

эх, если бы это было так....


 
oldman ©   (2008-09-03 10:59) [14]


> Татьяна ©   (03.09.08 10:46) [11]
> Всем спасибо за помощь. Я все поняла


Такие ветки так просто не закрываются...
Мы еще продолжим, будь уверена! Заходи, если что.


 
Anatoly Podgoretsky ©   (2008-09-03 11:43) [15]

> quart  (03.09.2008 10:52:12)  [12]

Это как раз наглядный пример неправильной настройки БДЕ


 
quart   (2008-09-03 11:48) [16]


> Anatoly Podgoretsky ©   (03.09.08 11:43) [15]

А что в настройках неправильно?


 
Anatoly Podgoretsky ©   (2008-09-03 12:01) [17]

> quart  (03.09.2008 11:48:16)  [16]

LOCAL SHARE
Если оно настроено, то никаких команд сохранения буферов давать не надо.
В справке смотреть бессмысленно, там этого нет, поскольку это побочный эффект, иначе чем задумывалось, кстати вся часть справки по LOCAL SHARE - сплошная мифология от Борланд, подлежит выкидыванию и переосмысливанию, даже TI грешит неточностями, хотя корректировалось.


 
MsGuns ©   (2008-09-03 15:53) [18]

Если это парадокс, то, насколько мне известно, существуют только один способ надежно заблокировать архивируемые таблицы от постороннего доступа - это полный их захват. После этого - для каждой Select * from с переименованием Answer в "родное" имя в другом каталоге. После отработки всех запросов содержимое "другого" катагога архивируется. все таблицы разблокируются.



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

Форум: "Начинающим";
Текущий архив: 2008.10.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.038 c
2-1220095559
biver64
2008-08-30 15:25
2008.10.12
Коприрование папки!


4-1197883964
p_evghenii
2007-12-17 12:32
2008.10.12
Как завершить работу другого приложения раньше Windows


15-1219085524
self.name
2008-08-18 22:52
2008.10.12
размер Record


2-1220452724
FIL-23
2008-09-03 18:38
2008.10.12
Двойное нажатие мышкой...


15-1216776408
Граф3
2008-07-23 05:26
2008.10.12
Можно ли в html нарисовать график?





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