GRANT ALL TO «кто-то» предоставляет все разрешения для всех объектов, доступных в базе данных. Но я не уверен, что это должно работать в sql server 2005, насколько мне известно, они оставили «GRANT ALL» только для обратной совместимости.
Согласно статье в SQL Server 2005 работает следующим образом:
- Если защищаемым объектом является база данных, "ALL" означает BACKUP DATABASE, BACKUP LOG, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION , CREATE ПРОЦЕДУРА, СОЗДАТЬ ПРАВИЛО, СОЗДАТЬ ТАБЛИЦУ И СОЗДАТЬ ВИД.
- Если защищаемая является скаляром функция, "ALL" означает EXECUTE и ССЫЛКИ.
- Если защищаемая является табличной функцией , «ALL» означает DELETE, INSERT, ССЫЛКИ, ВЫБРАТЬ и ОБНОВЛЕНИЕ.
- Если защищаемая является хранимой процедурой , «ВСЕ» означает EXECUTE.
- Если защищаемая таблица, «ВСЕ» означает DELETE, INSERT, REFERENCES, SELECT и UPDATE.
- Если защищаемое является видом, «ALL» означает DELETE, INSERT, REFERENCES, SELECT и UPDATE.
Надеюсь кто-то правильный ответ
MSDN - GRANT
Уверены ли вы? В документации MSDN явно говорится: «Он не предоставляет все возможные разрешения». – 2008-12-03 21:08:11