2012-09-03 4 views
0

SQL Server 2008에서 특정 테이블이 삭제되지 않도록하거나 전체 데이터베이스 테이블이 삭제되지 않도록하거나 데이터베이스/테이블을 삭제하지 못하도록 할 수 있습니까?테이블 삭제를 비활성화하는 방법은 무엇입니까?

+3

그렇게 할 가능성이 deletees 권한을 거부 : 당신이 실수를하고 테이블을 드롭 할 수 있어야 사람을 두려워 있다면, 당신은 DDL 트리거를 만들 수 있을까? –

+0

어떻게해야합니까? 나는 약간의 초보자 SQL에 대해 알고 있지만 그 정도면 충분하지 않다. –

+1

테이블에서 삭제 권한을 제거하거나 더 좋지 않은 사용자로부터 삭제 권한을 제거하고 역순으로 부여한다 상기 사용자에게 요구되는 권리. 보십시오 테이블에 대한 드롭 권한을 거부하는 방법 * http://dba.stackexchange.com/questions/15846/how-to-deny-drop-permission-for-a-table –

답변

2

쉬운 대답은 다음과 같습니다. 테이블을 가져서는 안되는 사람들에게 테이블을 놓을 수있는 권한을주지 마십시오.

CREATE TRIGGER safety 
ON DATABASE 
FOR DROP_TABLE, ALTER_TABLE 
AS 
    PRINT 'You must disable Trigger "safety" to drop or alter tables!' 
    ROLLBACK 
; 

http://msdn.microsoft.com/en-us/library/ms186406(v=sql.105).aspx

+0

대단히 감사합니다. ! –

관련 문제