2013-07-18 77 views
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] 

有沒有辦法設置DELETE,INSERT,SELECT和UPDATE權限創建表的腳本中的特定數據庫角色?

回答

0

您可以創建一個新的數據庫角色,然後通過以下分配權限:

例如,我已經叫作用 「Custom_Admin」

GRANT SELECT,UPDATE,INSERT,DELETE ON CAS_WORKED TO CustomAdmin

或(更標準,你應該有fulluser)

GRANT SELECT,UPDATE,INSERT,DELETE ON CAS_WORKED TO FULLUSER

希望這會有所幫助。

0
GRANT SELECT, INSERT, UPDATE, DELETE ON CAS_WORKED 
TO USERGROUP1, USERGROUP2; 
1

完全可以將權限放入同一個腳本中,即使是在同一批次中,但在同一個語句中不可能。 CREATE TABLE應該正常發行,然後GRANT/DENY來設置權限。例如,它可以是這樣的:

CREATE TABLE dbo.test (Id INT NOT NULL PRIMARY KEY) ; 
GRANT SELECT ON dbo.test TO SomeUser ; 
GO