0

以下に、単純なテーブル作成スクリプトがあります。

CREATE TABLE  [dbo].[CAS_WORKED](
    [recordid] [int] IDENTITY(1,1) NOT NULL,
    [Region] [varchar](20) COLLATE Latin1_General_CI_AS NULL,
    [OpsLevel1] [varchar](20) COLLATE Latin1_General_CI_AS NULL,
    [OpsLevel2] [varchar](20) COLLATE Latin1_General_CI_AS NULL,
    [CostCentre] [varchar](4) COLLATE Latin1_General_CI_AS NULL

CONSTRAINT [PK_CAS_WORKED] PRIMARY KEY CLUSTERED 
(
    [recordid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

テーブル作成スクリプト内で特定のデータベース ロールの削除、挿入、選択、および更新のアクセス許可を設定する方法はありますか?

4

3 に答える 3

1

同じバッチ内であっても、同じスクリプトにアクセス許可を設定することは完全に可能ですが、同じステートメントでは不可能です。CREATE TABLEを通常どおり発行し、次に/GRANTを発行DENYしてパーミッションを設定します。たとえば、次のようになります。

CREATE TABLE dbo.test (Id INT NOT NULL PRIMARY KEY) ;
GRANT SELECT ON dbo.test TO SomeUser ;
GO
于 2013-07-19T00:03:57.547 に答える