Rap*_*nzo 0 sql authentication triggers
我有一个紧急的情况
我编写了一个登录触发器,用于禁用从黑客程序登录,但它阻止了我,并且没有用户无法登录数据库我的触发器是
/****** Object: DdlTrigger [connection_limit_trigger] Script Date: 08/13/2011 08:43:04 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [connection_limit_trigger]
ON ALL SERVER
FOR LOGON
AS
BEGIN
IF EXISTS (SELECT row_count,* FROM sys.dm_exec_sessions
WHERE 1 = 1
AND (program_name NOT IN ('myappname', 'Microsoft Office 2003','Microsoft Office 2007','Report Server','Microsoft SQL Server' ))
AND (program_name NOT LIKE '%Microsoft SQL Server Management Studio%')
OR host_name is not null
)
BEGIN
ROLLBACK;
END;
END;
--DROP TRIGGER connection_limit_trigger ON ALL SERVER
GO
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO
ENABLE TRIGGER [connection_limit_trigger] ON ALL SERVER
GO
Run Code Online (Sandbox Code Playgroud)
现在我无法登录数据库可以删除sql上的所有触发器吗?有没有办法解决这个问题.
如果我正确理解您的问题,由于您创建的LOGON触发器中的错误,您无法登录.
您可以在专用管理员连接(DAC)下删除(DROP)触发器.
sqlcmd -A -D master (as a sysadmin)
Run Code Online (Sandbox Code Playgroud)