Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Копирование роли / 4 сообщений из 4, страница 1 из 1
06.09.2002, 08:46:06
    #32048627
Dn
Dn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование роли
Ситуация: в тестовой базе создана роль, настроены permissions. Как скопировать эту роль со всеми permissions в другую базу того же сервера? Сервер MSSQL 7.0. Я пробовал и скриптовать и DTS - не получается, копируется только роль, но permissions нет :(
...
Рейтинг: 0 / 0
06.09.2002, 09:38:27
    #32048639
Dikobrazz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование роли
Выполни такой скрипт:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
declare @Role sysname

select @Role='test'

select case when protecttype in(  204 , 205 ) then 'GRANT '
when protecttype= 206  then 'REVOKE ' end+
case action
when  26  then 'REFERENCES'
when  193  then 'SELECT'
when  195  then 'INSERT'
when  196  then 'DELETE'
when  197  then 'UPDATE'
when  224  then 'EXECUTE' end
+' ON '+object_name(id)+
case when protecttype= 204  then ' WITH GRANT OPTION ' else '' end+
+' TO '+@Role
from sysprotects
where uid=user_id(@Role)

и результат выполни в другой базе данных.
...
Рейтинг: 0 / 0
06.09.2002, 11:11:04
    #32048688
Dn
Dn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование роли
Спасибо, отлично получилось!!!
...
Рейтинг: 0 / 0
06.09.2002, 11:13:09
    #32048694
Dn
Dn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование роли
поправочка, в твой запрос надо в конце добавить "and grantor=1", тогда совсем красиво получается :-)
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Копирование роли / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]