此触发器在数据库创建时执行操作- 显示了当有人创建新数据库时触发的服务器端触发器的示例。
另一个问题 -创建时触发更改数据库排序规则- 也显示了当有人创建新数据库时触发的服务器端触发器的示例。
这里有一个服务器端触发器的示例,它可以防止用户放弃登录:
USE [master]
GO
--======================================================================
-- example of a server trigger - does not allow a login to be dropped
--======================================================================
create trigger [no_dropped_logins] on all server
for drop_login
as
insert into ##LOGIN_WATCH
select r.*, s.login_name, s.host_name,
EVENTDATA().value('(/EVENT_INSTANCE/TSQLCommand/CommandText)[1]','nvarchar(max)') AS 'CmdText'
from sys.dm_exec_requests r
inner join sys.dm_exec_sessions s
on r.session_id = s.session_id
where r.session_id = @@SPID
我的问题是:
如何使用服务器端触发器来防止在 SQL Server 中创建链接服务器?
这在我的一个开发服务器中工作: