1. ホーム
  2. sql-server

SQL Serverでデータベースのテーブルに読み取りと書き込みのアクセス権を付与するためのT-SQLは何ですか?

2023-08-22 17:40:57

質問

を割り当てるための正確なSQLは何ですか? db_datareaderdb_datawriter のロールを SQL Server のユーザーに割り当てることができますか?

ユーザー名は MYUSER で、データベースは MYDB .

どのように解決するのですか?

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;