Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Перевод базы в многопользовательский режим.  [new]
vlsaf
Member

Откуда:
Сообщений: 1367
set @stmt = N'USE master --- Кто нам мешает, тот нам поможет
WHILE 1=1
BEGIN TRY
  ALTER DATABASE [' + DB_Name() + N'] SET MULTI_USER WITH ROLLBACK IMMEDIATE
  BREAK;
END TRY
BEGIN CATCH
  IF XACT_STATE() != 0 
    ROLLBACK TRAN
END CATCH'
exec(@stmt)


Не понял, где указывать имя базы, которую перевожу в MULTI_USER?
6 май 14, 13:25    [15979417]     Ответить | Цитировать Сообщить модератору
 Re: Перевод базы в многопользовательский режим.  [new]
Glory
Member

Откуда:
Сообщений: 104751
vlsaf
Не понял, где указывать имя базы, которую перевожу в MULTI_USER?

После ALTER DATABASE разумеется
6 май 14, 13:29    [15979481]     Ответить | Цитировать Сообщить модератору
 Re: Перевод базы в многопользовательский режим.  [new]
vlsaf
Member

Откуда:
Сообщений: 1367
Вместо DB_Name() что-ли? Подумал, что это какая-то внутренняя функция.
Т.е. так?

ALTER DATABASE [' + Odb16_1_25_NoTransient + N'] SET MULTI_USER WITH ROLLBACK IMMEDIATE


Если база зовется Odb16_1_25_NoTransient.
6 май 14, 13:34    [15979534]     Ответить | Цитировать Сообщить модератору
 Re: Перевод базы в многопользовательский режим.  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8807
автор
это какая-то внутренняя функция

Это системная функция. В справке есть информация.
6 май 14, 13:40    [15979605]     Ответить | Цитировать Сообщить модератору
 Re: Перевод базы в многопользовательский режим.  [new]
vlsaf
Member

Откуда:
Сообщений: 1367
Разобрался. Цикл отработал корректно. Дождался пока база освободилась и тут же перевел его в многопользовательский режим.

Всем спасибо.
6 май 14, 14:16    [15979965]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить