![]() |
|
|
![]()
|
|
| UhaMurad |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 103 Регистрация: 22.9.2004 Где: Махачкала Репутация: нет Всего: нет |
Помогите, пожалуйста.
В моей программе предусмотрена возможность резервного копирования БД (допустим, все таблицы копируются в другую папку). Однако, API функция CopyFileEx копирует старые файлы, без внесённых программой изменений в них. Предварительно закрываю таблицу (Table::Close()), но это не помогает... Может быть есть другие способы резервирования. Спасибо! |
|||
|
||||
| Dimich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 247 Регистрация: 25.8.2004 Где: Брянск Репутация: 3 Всего: 7 |
Думаю надо отконнектиться от базы, скопировать, а потом приконнектиться обратно
--------------------
Не работает - исправь, работает - не трогай!!! |
|||
|
||||
| UhaMurad |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 103 Регистрация: 22.9.2004 Где: Махачкала Репутация: нет Всего: нет |
Это как - Table.Close и Table.Open что ли? |
|||
|
||||
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: нет Всего: 23 |
UhaMurad
Используй TDatabase. У него есть метод Close. Так закроются все таблицы. |
|||
|
||||
| UhaMurad |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 103 Регистрация: 22.9.2004 Где: Махачкала Репутация: нет Всего: нет |
А ежели я использую в качестве имени БД прямой путь к ней ("D:\DB\Ar1"), то я не могу сослать таблицу на эту БД... |
|||
|
||||
| ahito1 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 228 Регистрация: 20.8.2007 Репутация: нет Всего: -1 |
тоже интересует данный вопрос
|
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
Данные хранятся в кеше винды для ускорения работы. Сбрасывай данные из буфера принудительно Советую почитать про метод FlushBuffers у компоненты TTable. |
|||
|
||||
| pseud |
|
||||
![]() Экспёрт Тыдыщ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1175 Регистрация: 18.5.2007 Где: Минск, Беларусь Репутация: 16 Всего: 40 |
Как ни странно, но и я нарвался на такую проблему.
Недавно в своей давно писанной проге с резервным копированием базы в архив обнаружил, что архивируется не актуальное состояние БД. И вроде Paradox - не транзакционная база, и вроде в Table (программа старая, сейчас я везде не рекомендую использование этого компонента) свойство CachedUpdates = False. Akella, спасибо за совет про FlushBuffers. Справка:
Проверить сейчас возможности нет, но, как я уже сказал, у меня CachedUpdates = False. Справка:
1. Надо бы проверить совет Akella. 2. TTable - это зло. В новых проектах использую сугубо Query. Изменения данных произведенные этим компонентом (SQL(DML)) точно сразу отразятся и в самом файле БД. -------------------- Испытание чужого терпения можно считать успешным, если оно лопнуло... |
||||
|
|||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
За то TTable значительно быстрее Query. Наверное за счёт того, что данные хранятся в кеше винды. Я с BDE всегда использовал только TTable. И не жалею.
Добавлено через 2 минуты и 23 секунды Но у TQuery тоже данные могут храниться в кеше. Я не знаю точно на счёт этого. Я всегда делал так:
Добавлено через 2 минуты и 56 секунд Скорее тут дело не в компонентах, а в самой винде. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |