如何禁用表被删除?

时间:2012-09-03 16:24:07

标签: sql sql-server sql-server-2008

在SQL-Server 2008上是否有可能禁止某些表被删除或整个数据库表被删除甚至删除任何数据库/表?

1 个答案:

答案 0 :(得分:2)

简单的答案是:不允许将表格丢弃给不应该拥有它的人。如果你害怕有人能够突然放弃表,你可以创建一个DDL触发器:

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