Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
SevSeverial
0 / 0 / 0
Регистрация: 09.02.2014
Сообщений: 88
1

Как отключить БД программно?

03.05.2014, 10:51. Просмотров 713. Ответов 2
Метки нет (Все метки)

доброго времени суток
есть БД и оболочка на делфи для нее
требуется сжать БД программно
использую код:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
   var
      Access : Variant;
   begin
      if Label_ad_bd_path.Caption <> '' then
         begin
            if MessageDlg('продолжить?', mtWarning, [mbyes, mbNo], 0) = mryes then
               begin
                  Access := CreateOleObject('Access.Application');
                  Try
                     if Access.CompactRepair(Label_ad_bd_path.Caption, Label_ad_bd_path.Caption + '_old') then //здесь ошибка
                        begin
                           DeleteFile(Label_ad_bd_path.Caption);
                           RenameFile(Label_ad_bd_path.Caption + '_old', Label_ad_bd_path.Caption); 
                           MessageDlg('БД сжата', mtInformation, [mbOK], 0);
                        end;
                     Access.Quit;
                     Access := Unassigned;
                  except
                     MessageDlg('Ошибка!', mtError, [mbOK], 0);
                     Access.Quit;
                     Access := Unassigned;
                  end;
               end;
         end
      else
         MessageDlg('Введите путь', mtWarning, [mbOK], 0);
   end;

if Access.CompactRepair(Label_ad_bd_path.Caption, Label_ad_bd_path.Caption + '_old') then - на этой строке вылезает ошибка. Если сжимать НЕ ПОДКЛЮЧЕННУЮ к оболочке БД, то все ровно. В общем вопрос: как отключить БД от оболочки, чтоб можно было ее сжать и подключить снова. ADOConnection.connected := false не помогает. Рассмотрю любые предложения (в интернетах не нашел ответ на поставленный вопрос).

Добавлено через 16 часов 40 минут
Если сжимать НЕ ПОДКЛЮЧЕННУЮ к оболочке БД, то все ровно.
тут имел ввиду, что всё работает на этих условиях
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.05.2014, 10:51
Ответы с готовыми решениями:

Как отключить окно DataBaseLogin???
Вот еще такое дело!!! Кто нибудь знает можно ли убрать окно DatabaseLogin...

Как отключить, а не завершить сеанс?
я знаю как программно выключить комп, перезагрузить. Но не могу найти как...

Как в Excel отключить пересчет формул?
Для более быстрого расчета, мне нужно в Excel отключить вычесление формул....

MainMenu: как отключить автоматическое открытие подменю?
Как отключить автоматическое открытие submenu при наведении мышью? Обыскал все...

Как отключить в компоненте TWebBrowser выполнение JavaScript
Надо отключить выполнение скриптов в компоненте, причем чтобы в настройках...

2
teleprog
176 / 148 / 43
Регистрация: 14.08.2008
Сообщений: 1,221
06.05.2014, 01:37 2
Лучший ответ Сообщение было отмечено SevSeverial как решение

Решение

Проверяете из под делфи?
Возможно у Вас в дизайн тайме в делфи стоит ADOConnection.connected := true, то есть кроме программы, еще делфи обращается к базе и она считается используемой.
0
SevSeverial
0 / 0 / 0
Регистрация: 09.02.2014
Сообщений: 88
06.05.2014, 15:59  [ТС] 3
Уважаемый teleprog, благодарю - помогло
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.05.2014, 15:59

DBGrid: как отключить отображение информации на этапе создания?
Здравствуйте! Подскажите чайнику как в DBGrid delphi отключить отображение...

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

Как программно запустить WinRar
с параметрами в командной строке и закрыть его после окончания им процесса...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru