Подтвердить что ты не робот

Что такое T-SQL Предоставить доступ для чтения и записи к таблицам в базе данных на SQL Server?

Каков точный SQL для назначения ролей db_datareader и db_datawriter пользователю в SQL Server?

Имя пользователя MYUSER, а база данных MYDB.

4b9b3361

Ответ 1

В SQL Server 2012, 2014:

USE mydb
GO

ALTER ROLE db_datareader ADD MEMBER MYUSER
GO
ALTER ROLE db_datawriter ADD MEMBER MYUSER
GO

В SQL Server 2008:

use mydb
go

exec sp_addrolemember db_datareader, MYUSER 
go
exec sp_addrolemember db_datawriter, MYUSER 
go

Также можно назначить возможность выполнять все хранимые процедуры для базы данных:

GRANT EXECUTE TO MYUSER;

Чтобы назначить возможность выполнения определенных хранимых процедур:

GRANT EXECUTE ON dbo.sp_mystoredprocedure TO MYUSER;

Ответ 2

Из SQLServer 2012 более элегантная изменить роль:

use mydb
go

ALTER ROLE db_datareader
  ADD MEMBER MYUSER 
go
ALTER ROLE db_datawriter
  ADD MEMBER MYUSER 
go

Ответ 3

Лучше создать новую роль, затем выполнить выполнение, выбрать... etc разрешения для этой роли и, наконец, назначить пользователей этой роли.

Создать роль

CREATE ROLE [db_SomeExecutor] 
GO

Предоставление разрешения на эту роль

GRANT EXECUTE TO db_SomeExecutor
GRANT INSERT  TO db_SomeExecutor

Добавить базу данных пользователей > безопасность → роли > databaseroles > Свойствa > Добавить (внизу справа) вы можете искать пользователей AD и добавлять

ИЛИ

   EXEC sp_addrolemember 'db_SomeExecutor', 'domainName\UserName'

Пожалуйста, обратитесь к сообщению