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

Вниз

RESTORE DATABASE   Найти похожие ветки 

 
MakNik ©   (2003-09-18 14:46) [0]

Поскажите, пожалуйста, как корректно восстановить базу?
Мой код не работает. Как это корректно делать, когда работают другие пользователи? Возможно ли их програмно снять или заблокировать???
if OpenDialog1.Execute then
begin
if not FileExists(OpenDialog1.FileName) then Exit;
DMForm.ADOConnection.Connected:=false;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add("Use dbTRANSFORMER EXEC sp_addumpdevice ""disk"", ""mydiskdump1"", ""c:\TRANSFORMERDB3.bak"" ");
ADOQuery.SQL.Add("RESTORE DATABASE dbTRANSFORMER FROM mydiskdump1");
ADOQuery.SQL.Add("EXEC sp_dropdevice mydiskdump1");

try
ADOQuery.ExecSQL;
except
MessageDlg("Ошибка!", mtError ,[mbOk], 0);
end;
ReloadTree;
End;


 
Nikolay M. ©   (2003-09-18 14:57) [1]


> Как это корректно делать, когда работают другие пользователи?

AFAIK, никак. Сначала - отсоединить всех пользователей.


 
MakNik ©   (2003-09-18 15:18) [2]

Но даже когда все отключены, этот код не работает (хотя в SQL Query Analyzer этот же код работает). В чем ошибка???


 
Nikolay M. ©   (2003-09-18 15:35) [3]

Попробуй оформить это:
ADOQuery.SQL.Add("Use dbTRANSFORMER EXEC sp_addumpdevice ""disk"", ""mydiskdump1"", ""c:\TRANSFORMERDB3.bak"" ");
ADOQuery.SQL.Add("RESTORE DATABASE dbTRANSFORMER FROM mydiskdump1");
ADOQuery.SQL.Add("EXEC sp_dropdevice mydiskdump1");

в виде хранимой процедуры и вызывай ее. А то когда ты все это в один-единственный запрос пхаешь как-то страшновато становится...


 
Reindeer Moss Eater ©   (2003-09-18 16:10) [4]

Создай на сервере JOB, делающий то что надо.
Выброси всю байду написанную выше.
Вызывай системную sp для запуска этого джоба.


 
MakNik ©   (2003-09-18 16:45) [5]

JOB не подойдет... что-то другое нужно...


 
Reindeer Moss Eater ©   (2003-09-18 16:52) [6]

JOB подойдет и что-то другое не нужно.



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
7-27758
Константин
2003-07-23 22:31
2003.10.09
Как изменить разрешение экрана?


3-27322
lamer1
2003-09-21 16:03
2003.10.09
DCOM


8-27612
NetKnight
2003-06-10 11:27
2003.10.09
Как смиксовать 2 файла ?


1-27519
k_len
2003-09-26 11:03
2003.10.09
Форма


1-27453
Злодей
2003-09-27 18:38
2003.10.09
Прочитать файл по локалке